Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IMPT-41] Use the time format from Jane #50

Merged
merged 1 commit into from May 5, 2021

Conversation

ivanjiang5628
Copy link

@ivanjiang5628 ivanjiang5628 commented Mar 31, 2021

Description

  • Linear Ticket

  • Replace the military time format with the 12-hour system format in private chat.

General PR Class

👁 = UX / UI improvement

Release Note

Use the time format from Jane in the private chat.

Dependencies / ENV

N/A

Risk Scorecard

  1. As the author you should check the boxes that correspond with your PR and then use the following guide to set your risk label:
  • 0 checkboxes => low risk
  • 1-3 checkboxes => medium risk
  • 4+ checkboxes => high risk
  1. Unless exempt, checked risk factors should be explained comprehensively in the Release Risk Assessment section below
  2. Medium or higher risk PRs should get more than one code-review approval

NOTE: if you aren't changing any production files, please use the zero risk label

  • requires env configuration to be added in production
  • js package changes1
  • more than 200 LOC changed in production files1
  • includes a user-facing workflow change to an existing production feature (user muscle memory or pattern recognition will be affected)
  • could prevent access to Jane Video (eg. cors, middleware, changes to auth system)
  • affects a widely used component or piece of code
  • I have a doubt - I want the RMT to review this. If possible, please elaborate your concerns in the risk assessment section.

1 No need to explain these risk factors below

Release Risk Assessment

Zero risk.

Demo Notes

## Code Review Resource: [Dev Team Notion Page](https://www.notion.so/janeapp/Dev-Team-f06c6eb2ccca4066bc63fc1ac1bd2549) Resource: [Code Review Checklist](https://www.notion.so/janeapp/Code-Review-checklist-2c510c527ac7470c902a5e8f25f9db3c)
  • I clearly explained the WHY behind the work, in the Description above

Design

  • I added instructions for how to test, in the QA section below
  • I added specs for changes, or determined that none were required
  • I demoed this to the appropriate person
  • I considered both mobile & desktop views, or that wasn't relevant

Code

  • I committed code with informative git messages
  • I wrote readable code, or added comments if it was complex
  • I performed a self-review of my own code
  • I rebased my branch on the latest master

QA and Smoke Testing

Steps to Reproduce

Create an online appointment > join the call > open the private chat > send a text message > the time of each message should be the 12-hour format.

Fixed / Expected Behaviour

Jane Desktop

Other Considerations

  • Will this affect other parts of the app or views?
  • How can the success of this work be confirmed after release to production?
  • What QA have you already done?

Screenshots

Before

### After

@linear
Copy link

linear bot commented Mar 31, 2021

IMPT-41 Use the time format from Jane

In the private chat, we show the time of each message using military time currently. We should use the same time format that Jane uses so it is a consistent experience for patients and practitioners.

!image-2020-11-06-16-14-20-360.png|thumbnail!

View original issue in Jira

@ivanjiang5628 ivanjiang5628 self-assigned this Mar 31, 2021
@ivanjiang5628 ivanjiang5628 added the Risk - Zero Zero risk of disruption to codebase or infrastructure. label Mar 31, 2021
@ivanjiang5628 ivanjiang5628 marked this pull request as ready for review March 31, 2021 17:29
@JuliaMoniqueRix JuliaMoniqueRix added the demoed Demoed with a PO or key stakeholder label Apr 1, 2021
@ivanjiang5628 ivanjiang5628 added this to Code Review Approved / In QA in Telehealth Roll-Out Board Apr 7, 2021
@jngo-janeapp jngo-janeapp self-assigned this Apr 8, 2021
@jngo-janeapp
Copy link

jngo-janeapp commented Apr 9, 2021

Before Testing

  • CI must be passing
  • No conflicts
  • No unresolved reviews/changes requested
  • No additional changes/pushes from dev since the last round of QA
  • Release note is sufficient for #features
  • Read through Notion / Jira story / Linear Issue / Slack Convo / Demo video
  • Read through comments

Developer's Recommended Test Plan

  • Create an online appointment
    Schedule_-Demo_Clinic-_Jane
  • Join the call > open the private chat
  • Send a text message
  • The time of each message should be the 12-hour format.
    11_D_53_Da_8___Jane_Video_Chat
    7_Df_6_F_3_A_9___Jane_Video_Chat

Additional Thoughts on Testing

  • Ensure all buttons work as expected

Mobile, Browsers, Jane Desktop

  • Google Chrome
  • Firefox
  • Safari
  • iPhone

Pass Story on QA Board / Mark Done in Jira/ Mark Scheduled for Release in Linear

  • LGTM

Move PR on Roll Out Board

  • Moved from QA to Patch Release Candidate

@ivanjiang5628 ivanjiang5628 moved this from Code Review Approved / In QA to Ready for Release in Telehealth Roll-Out Board Apr 9, 2021
@jngo-janeapp
Copy link

this PR is ✅

@ivanjiang5628 ivanjiang5628 merged commit 9793f8e into master May 5, 2021
@ivanjiang5628 ivanjiang5628 moved this from Ready for Release to Merged in Telehealth Roll-Out Board Jul 7, 2021
ivanjiang5628 added a commit that referenced this pull request Nov 4, 2021
…Jane

[IMPT-41] Use the time format from Jane
ivanjiang5628 added a commit that referenced this pull request Mar 29, 2022
* fix(rn,filmstrip) avoid fast scroll trigggering visibility notifications

An item won't be considered visible until it has been visible for 500ms.

* fix(rn,filmstrip) simplify code

viewableItems always comes in order and indexes are always ascending. In
addition, if the array comes empty (I saw it happen on Android at least, when
scrolling like a maniac) we'd calculate the right value, instead of Infinity.

* fix(sounds) fix reaction sound names

- Remove unicode charcters from filenames
- Simplify code for copying them to the iOS SDK

* fix(rn,ParticipantPane) optimize

Use a FlatList to avoid loading all participants at once.

* feat(ios) update dropbox authentication to PKCE flow

* lang: Update portuguese translation (jitsi#9836)

* Update portuguese translation

Translate "dialog”, "virtualBackground”, "info” and "settings" sections

* fix "you" translation

* revert "you" translation to original

* lang: Added and edited translations for vi (jitsi#9850)

Co-authored-by: cfriedlander <chagai.friedlander@aarenet.com>

* lang: Update i18n Occitan (jitsi#9853)

Some update.
Been up to line 253 at the moment

* lang: Update main-sv.json (jitsi#9862)

* fix(notifications) throttle join notifications for 2 seconds

* fix(lang,notifications) make join notification text more generic

* feat(notifications) skip join notifications when meetings grow large

* fix(external-api): Avoid naming event 'error'

- EventEmmitter treats 'error' as a special case and throws error.

* chore(config): Whitelist `disableRecordAudioNotification` config

* fix(android): renames amplitudereactnative project to use react-native- pattern

* task(android): updates sdk version

* chore(config) fix spacing

Removed a redundant space under maxBitratesVideo.

* fix(toolbox): Show dominant speaker name only when in conference

* feat(rtcstats): send dominant speaker stats (jitsi#9883)

* send dominant speaker stats

* fix lint

* chore(deps) lib-jitsi-meet@latest

* fix(LocalSdpMunger): do not fake video sdp when screen sharing
* fix(JitsiConference) avoid extra processing if the room was left
* fix(moderator) remove unneeded log

jitsi/lib-jitsi-meet@b0d27fa...28a5355

* feat(config): Add config option for e2ee label

* fix(prejoin) Fix buttons positioning for 3rd party

* feat: Turn on enableLayerSuspension option by default. (jitsi#9894)

* fix(config) Add more info about enableLayerSuspension option.

* chore(deps) lib-jitsi-meet@latest

* Update config.js

Co-authored-by: Saúl Ibarra Corretgé <s@saghul.net>

Co-authored-by: Saúl Ibarra Corretgé <s@saghul.net>

* feat(rn) add polyfill for the performance API

Implements: https://developer.mozilla.org/en-US/docs/Web/API/Performance
Ref: https://github.com/oblador/react-native-performance

* feat(config) add connection indicators flags

* feat(responsive-ui): Keep aspect ratio for filmstrip self view on mobile web (jitsi#9848)

* feat(responsive-ui): Keep aspect ratio for filmstrip self view on mobile web

Right now filmstrip displays self view in landscape mode.
With these changes the aspect ratio of the self view will be maintained
so on portrait mode the thumbnail will be displayed vertically.
Of course this makes sense only on mobile web.

* Code review

* Fix height

* feat: Dynamically limit the number of participants in a room (jitsi#9880)

* Dynamically limit the number of participants in a room

* Remove log

* fix(config): Add separate entries for the e2ee labels

* feat(config) Add config for disabled sound id's

- unify naming for sound id values

* feat(doc) revamp README

* fix(rn,polyfills) fix Performance polyfill

We need to re-override now() to avoid a recursion error. Also I missed the
default export.

* feat: new prosody module to report census of all rooms (jitsi#9901)

* new prosody module to report census of all rooms

* changed to use util to check if it's a test room

* improved docs

* more doc improvements

* updated to use muc_domain_prefix

* facepalm

* fix(notifications): Added  user join notification keys

* lang: Complete translation to Portuguese (jitsi#9871)

* Complete translation to Portuguese

* "reactions" and "connectedThreePlusMembers" fix

* additional bcp47 languages

* chore(deps) lib-jitsi-meet@latest

* fix(RTCUtils) Return false for device change checks on mobile Safari.

jitsi/lib-jitsi-meet@735943b...ad1f06d

* fix(settings) Disable mic/camera selection on mobile safari.
Creating a preview of the same audio/video track kills the tracks that is already being shared in the conference. Therefore, disable camera/mic selection in the settings dialog while the user is in the call. The devices are selectable from the prejoin screen settings dialog.

* feat: Add configuration to disable removing raised hand on dominant speaker (jitsi#9641)

* Add configuration to disable removing raised hand on dominant speaker change

* Fix lint problem

* Avoid dispatching unnecessary action

* Fix lint problem

* feat: Add configuration to disable chat emoticons jitsi#9889 (jitsi#9899)

* feat: Additional setting to order participants in speaker stats (jitsi#9751)

* Additional setting to order participants in speaker stats jitsi#9742

* Setting to order speaker stats optimisations jitsi#9742

* Lint fixes jitsi#9742

* Replace APP references jitsi#9742

* Lint fixes jitsi#9742

* Setting to order speaker stats optimisations 2 jitsi#9742

* Lint fixes jitsi#9742

* Remove unnecessary param jitsi#9742

* Add more speaker-stats reducer _updateStats docs  jitsi#9742

* feat(external_api): Command to set participant volume

* fix(prejoin): Change avatar color to match in-meeting one

* fix(rn,shared-video,invite-dialog) fix placehoolder text color to be visible

* feat(av-moderation) Updated Advanced moderation (jitsi#9875)

Co-authored-by: Vlad Piersec <vlad.piersec@8x8.com>

* fix(context-menu) Hide toolbars when participant context menu opened (jitsi#9842)

- hide toolbars only when in tile view
- fix community issue: jitsi#9818

* Thumbnail reordering and participant pane enhancements.

* fix(participant-pane) Use the sorted participant list from redux instead of sorting it on every render making it better performant. Match the participant order with that of the order in the filmstrip. Also move the participants with raised hand to the top of the list.

* ref(filmstrip) Move enableThumbnailReordering flag to testing section.

* fix(participants) Add new selectors for getting sorted participants.

* fix: Add different text when disablePolls is enabled/disabled (jitsi#9900)

* Add different text when disablePolls is enabled/disabled jitsi#9890

* Add different text when disablePolls is enabled/disabled v2 jitsi#9890

* lang: update German translation (jitsi#9921)

Signed-off-by: Christoph Settgast <csett86@web.de>

* chore(deps) lib-jitsi-meet@latest

* ref(JitsiConference): don't crash on wrong oldTrack (jitsi#1709)

jitsi/lib-jitsi-meet@ad1f06d...64cdf69

* Use redux for local tracks instead of conference.js (jitsi#9920)

* do not use this.local video

* move tracks initialized flag around

* do not use this.localAudio

* untangle use audio/video stream methods

It should be safe to call setVideoMuteStatus and
setAudioMuteStatus regardless of the prejoin page
visibility state.

* add NO-OP to use track methods and fix crash
in _setLocalAudioVideoStreams on not a promise

* use allSettled

* feat: Whitelists enableUnifiedOnChrome.

Whitelists it, so we can run tests by setting it to false.

* chore(deps) lib-jitsi-meet@latest

* fix(replaceTrack):  Don't wrap Error in Error.

jitsi/lib-jitsi-meet@64cdf69...fbf85bd

* feat(toolbar-buttons): Add event for notify overwritten toolbar buttons

* fix(context-menus) Fix participant context menus/toolbar overflow menu

- on ipads, long touch open dialog now opens the context menu to the left of the thumbnail as expected
- on ipads, now we close context menus on tap out
- fix case when participant context menu's height > tileview videos' height causing scroll on videos pane
- keep toolbox open while the overflow menu is shown
- keep remote participant video thumbnail in filmstrip visible even if toolbox is hidden, if context menu is opened
- Fix bug where toolbox could be completely disabled

* Show reactions buttons at all times

Don't send reactions via the channel if there's only one participant in the meeting

* feat(android) expose channels ids

* fix(rn) disable pip while authorising dropbox

* fix(shared-video) make placeholder translatable

Also fix capitalization.

* fix(rn,shared-video) validate URLs to avoid crashes on the native side

* fix(rn,conference) count fake participants when checking if lonely meeting

A shared video participant counts, so the lonely meeting invite options can
disappear.

* feat(rn,conference) show invite button on the top navbar

* fix(conference.js): add tracks to the conference

* fix(av-moderation) Advanced moderation improvements (jitsi#9935)

* Update moderation in effect notifications

Only display one notification for each media type. Display notification for keyboard shortcuts as well

* Update muted remotely notification

Display name of moderator in the notification

* Fix indentation on moderation menu

* Update text for video moderation

* Added moderator label in participant pane

* Update microphone icon in participant list

For participants that speak, or are noisy, but aren't dominant speaker, the icon in the participant list will look the same as the dominant speaker icon but will not change their position in the list

* Added sound for asked to unmute notification

* Code review changes

* Code review changes

Use simple var instead of function for audio media state

* Move constants to constants file

* Moved constants from notifications to av-moderation

* fix(rn,conference) show underlay when tapping navbar buttons

* fix(feedback): Scroll to the top when opening feedback dialog

* feat(rn,connection) enable XMPP WebSocket on mobile

Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>

* feat((rn,config) add a/b test flag to enable XMPP WebSockets on mobile

* fix(filmstrip) Fix filmstrip on RN when thumbnail reordering is disabled.

* fix(context-menus) Don't show volume slider on iOS web

* fix(device-selection) Do not create preview when mic selection is disabled.
This fixes an issue on mobile Safari when audio is lost after the user opens the device selection menu.

* fix(Filmstrip) fix not being able to scroll

* fix(prejoin) implement ux improvements for mobile (jitsi#9939)

* android: fix initializing soloader from Activity context

It has to be an application context.

* fix: Fixes undefined error causing to stop reloads.

Jibri was hitting a problem where it reloads and in certain cases (remote user is screensharing) we hit this participant undefined, which stops reload and stops recording.
It is still not obvious why we try to render this on leaving the conference and for a participant that is not in the conference ... this re-render should not happen as this component should be removed from its parent when the participant is not existing.

* chore(deps) lib-jitsi-meet@latest

* fix: Reads shard name and from disco-info if available.
* chore(deps): bump sdp-interop to get another fix for ICE restart
* update sdp-interop to include Unified ICE restart fix

jitsi/lib-jitsi-meet@fbf85bd...609e3d5

* fix(recorder): tile view

In the case of the recorder we were not taking into account that the
local thumbnail is not visible. This was braking the rendering  and
positioning of the thumbnails in tile view.

* fix(lang) update Russian translation

Co-authored-by: Alexey Matveev <malex@1forma.ru>

* fix(jaas) do not show overriden unsupported browser page for jaas users (jitsi#9962)

* fix(notifications) Fix recording start notif not disappearing

* feat(conference-info-header) Make conference info header configurable. (jitsi#9638)

* chore(deps) lib-jitsi-meet@latest

* fix(JitsiConference) Check for room before calling isFocus method on the room object.
* fix(Jingle) Reverse the order of ssrcs signaled for Firefox. This fixes an issue where the bridge doesn't forward the HD stream from Firefox to other users in the call. The order of the ssrcs produced by the browser is from Highest resolution to lowest whereas the bridge assumes it to be from lowest to highest as is the case in Chrome and Safari.
* fix(codec-selection): Impose VP9 bitrates only when VP9 is the negotiated codec. If Jicofo doesn't offer VP9 but the client expresses a preference for VP9, VP9 bitrates were being imposed before.

jitsi/lib-jitsi-meet@609e3d5...3b8baa9

* feat(e2ee) disable e2ee when large number of participants

* fix(responsive-ui): Shrink self view when in portrait mode on mobile web

* fix(config,notifications) fix rendering moderator notifications (jitsi#9986)

Move DISABLE_FOCUS_INDICATOR from interface_config.js to config.js (disableModeratorIndicator).

* fix(reactions) Reactions improvements (jitsi#9964)

* Register shortcuts on mount

* Changed icon for reactions menu

* Enable reactions by default

* Fix unreadCount bug

When having unread messages and sending a reaction the unread count now shows the correct count

* Fix overflow menu bottom color when reactions are enabled

* Revert raise hand icon

* Update raise hand functionality

On desktop show raise button with arrow for reactions. Only show raise hand in the reactions menu on mobile

* Fix lint error

Add required prop to ToolboxButtonWithIcon

* Legacy support for enable reactions

If disableReactions is undefined treat it as true

* Remove unnecessary code

* Fix unread counter showing negative count

* Fix unreadCount with reactions

UnreadCount ignores all reactions messages

* Fixed typo

* Fix background color

* feat(api): Expose event used for sending browser support

* fix(av-moderation) Display Allow Video instead of Ask to Unmute (jitsi#9991)

When the user is allowed audio but not video display Allow Video button instead of Ask to Unmute

* feat(rn,av-moderation) updated advanced moderation on Native

Updated participants list to:
- show Moderator label
- show correct status icons (red for force muted)
- show participants in the right order

Updated moderation to:
- show moderation menu at all times
- make moderation options functional

Updated notifications:
- fixed raise hand to show name
- display moderator rights granted

Updated mute/ stop video for all dialogs to include moderation toggles

Added ask to unmute button

Fix comments on ask to unmute

Co-authored-by: robertpin <robert.pin9@gmail.com>

* chore(rn,versions) bump sdk version

* fix(av-moderation) - Mute/ stop video except no longer change moderation status

Mute everyone else no longer disables moderation

* Fix stop everyone's video

Stop everyone's video now also stops screensharing for the moderator that did the action, not just video

* fix(participants-pane) bring back lobby reject button

It got accidentally removed in:
jitsi@1dc8bfa#diff-ef66b8ab7c899b16d6c1102b3c812aa45509f95e11267cbfdbd0674143e94575

* fix(lobby) don't mix web and native actions on the same file

USe actions.any for common actions.

* fix(toolbox) don't mix web and native actions on the same file

* fix(ios) fix black screen when using Bluetooth in iOS 15

Fixes: jitsi#9996

On iOS 15 Bluetooth devices are reported twice for some reason, one with the
normal type "Bluetooth" but another type without a know (to me) type, and the
uid ends in "-reference".

While we send those unkwno devices to JS, we were not filtering them properly.
This patch skips them altogether.

* fix(rn) add default value when retrieving e2ee redux state

* fix(lang) update occitan translation

* fix(ios) create audio track early

In iOS 15 we observe that not creating the audio track early may result in not
getting audio after unmuting for the first time.

Creating the audio track early means the first unmute doesn't need to add the
track to the conference, resulting in a much faster operation.

Note that creating the track early doesn't mean we will start unmuted, the track
will be muted.

* fix(chat): Hide scroll bar on chat input

Based on this suggestion jitsi#9958

* fix(subject): Keep subject centered when chat panel is open

* fix(av-moderation) Only stop screensharing on Stop everyone's video

* fix(toolbar) Fix toolbar always visible; refactors

- deprecate `INITIAL_TOOLBAR_TIMEOUT`, `TOOLBAR_ALWAYS_VISIBLE`, `TOOLBAR_TIMEOUT`

* chore(interface-config) Group deprecated configs

* fix: Speaker stats search fix jitsi#9751 (jitsi#10019)

* Optimization of speaker stats display names jitsi#9751

* Fix speaker stats search for empty string jitsi#9751

* fix(lang) update french translation

* fix(av-moderation) Stop screensharing and video on moderation start

When video moderation starts, stop screensharing and ignore if video was on when sharing started

* feat(dynamic-branding): Add branding option for virtual backgrounds

* fix: Fixes errors in prosody about string formatting and nil values. (jitsi#10037)

* fix: Fixes errors in prosody about string formatting and nil values.

error   Traceback[c2s]: /usr/lib/prosody/util/format.lua:59: invalid option '%b' to 'format'
stack traceback:

mod_polls.lua:25: attempt to index local 'data' (a nil value)
stack traceback:

* squash: Fix more formatting concatenation.

* lang: Update main-ar.json (jitsi#10034)

Adding missing keys and translate them

* lang: minor fix in russian localization (jitsi#10027)

* - minor fix in russian localization

* - minor localization fix

Co-authored-by: Alexey Matveev <malex@1forma.ru>

* fix(av-moderation) Improve advanced moderation (jitsi#10004)

* fix(av-moderation) Improve advanced moderation

Hide moderator label on disasbleModeratorIndicator
 - On disasbleModeratorIndicator config hide moderator label from participants pane

Add Ask to Unmute button to mobile web

* Fix lint error

* fix(android) removes unnecessary parcel processing

* fix(lang) update Occitan translation

* fix(config) fix prejoin throwing a TypeError due to late config initialization (jitsi#10041)

* fix(android) disables uncompressed native libs usage

* fix(invite) fix video rooms not being displayed in invite search

* feat(av-moderation) Ask to Unmute and remove from Whitelist (jitsi#10043)

* feat(av-moderation) Ask to Unmute and remove from Whitelist

Make Ask to Unmute work without moderation
Add remove from moderation whitelist functionality

* chore(deps) lib-jitsi-meet@latest

* feat(av-moderation) Remove from moderation whitelist functionality (jitsi#1729)
* fix(chore) corrected typo in log message
* fix(e2ee) replace nullish coalescing with or
* fix(e2ee) restore initial key when RATCHET_WINDOW_SIZE reached

jitsi/lib-jitsi-meet@3b8baa9...0646bc3

Co-authored-by: Дамян Минков <damencho@jitsi.org>

* fix: Fix speaker stats search dependency and remove duplicate logic jitsi#9751 (jitsi#10045)

* Fix speaker stats search dependency and remove duplicate logic jitsi#9751

* Fix speaker stats component render on update jitsi#9751

* feat(rtcstats): remove SDP transmission jitsi#10054

* feat(lang) add helper script for manual translations

It updates the main language file for a given locale from the canonical one and
sets the empty string on the missing keys. No longer used keys are discarded.

* fix(lang) sample run of the translations updating script

* feat(ios) drop support for iOS 11

* chore(deps) lib-jitsi-meet@latest

* fix(Jingle) Log the extracted info from Jingle IQ.
* ref(Jingle) Alpha sort and prefix the local functions with '_'
* ref(Jingle) Log formatted source information. Instead of logging the full IQs for Jingle messages like session-initiate, source-add and source-remove which can be very long, log just the formatted source information.
* ref(RTC) rename iceConfig to pcConfig. It makes more sense to call it pcConfig since it is the RTCConfiguration object passed to the WebRTC peerconnection.
* fix(logging) Log only the imp events on remote tracks. Log only the important events that we care about on the HTMLMediaElement that the remote tracks are attached to.

jitsi/lib-jitsi-meet@0646bc3...ae70962

* fix(logging) Remove logs that are very chatty.
The receiver video constraints that are actually sent to the bridge are logged in LJM and need not be logged in the application.

* fix(chore): Don't show react "unique key" warning

* fix(ios) fix crash on WebSocket errors

Bacckport
facebook/react-native@748aa13

Fixes:

~~~
Fatal Exception: NSInvalidArgumentException
0  CoreFoundation                 0x129708 __exceptionPreprocess
1  libobjc.A.dylib                0x287a8 objc_exception_throw
2  CoreFoundation                 0x19b9c8 -[__NSCFString characterAtIndex:].cold.1
3  CoreFoundation                 0x1a7a20 -[__NSPlaceholderDictionary initWithCapacity:].cold.1
4  CoreFoundation                 0x164c0 -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]
5  CoreFoundation                 0x8de0 +[NSDictionary dictionaryWithObjects:forKeys:count:]
6  JitsiMeetSDK                   0x5704b4 -[RCTWebSocketModule webSocket:didFailWithError:] + 168 (RCTWebSocketModule.m:168)
7  JitsiMeetSDK                   0x54a5ec __33-[RCTSRWebSocket _failWithError:]_block_invoke_2 + 622 (RCTSRWebSocket.m:622)
8  libdispatch.dylib              0x2a84 _dispatch_call_block_and_release
9  libdispatch.dylib              0x481c _dispatch_client_callout
10 libdispatch.dylib              0xc004 _dispatch_lane_serial_drain
11 libdispatch.dylib              0xcc00 _dispatch_lane_invoke
12 libdispatch.dylib              0x174bc _dispatch_workloop_worker_thread
13 libsystem_pthread.dylib        0x37a4 _pthread_wqthread
14 libsystem_pthread.dylib        0xa74c start_wqthread
~~~

* feat(external-api) add data-channel-open event

Signals that the bridge channel is open. It may take a few ms to get established
after the conference join, so applications might be interested in using it once
ready.

* feat(android) target sdk 31

* fix(Prejoin): Join click before conference.init()

* fix(prejoin): Prevent double joining conference.

* chore(deps) lib-jitsi-meet@latest

* fix(browser-support) fix detecting iOS browsers correctly
* fix(JitsiConference):2 instances for the same room
* ref: sendMuteStatus is not async

jitsi/lib-jitsi-meet@ae70962...c15dda1

* feat: Simplify AV moderation participant approve/remove message and fix array usage. (jitsi#10062)

* feat: Simplify av moderation participant approve/remove message.

There is no point of having messages like:
{
  "room": "myroom@conference.mydomain.com",
  "type": "av_moderation",
  "mediaType": "audio",
  "removed": true,
  "approved": true
}

* fix: Fixes array in json.

fix: Fixes array in json.

* fix: Fixes jitsi#9869 Lobby and wrong password case.

* chore(deps) lib-jitsi-meet@latest

* fix(xmpp): disable RTX for Firefox < 93, because it results in random SSRC order
* fix(Jingle): stop reverting the SSRCs from Firefox

jitsi/lib-jitsi-meet@c15dda1...7a56f7b

* feat(android) extract notification channel name

* chore(deps) lib-jitsi-meet@latest

* fix(JitsiConference) make sure isE2EEEnabled() returns a boolean
* fix(loggging) fix exceptions on mobile

jitsi/lib-jitsi-meet@7a56f7b...afc1c34

* fix(rn,conference) fix unmute when "everyone starts muted" is set

Since iOS 15 we really need the audio stream to exist, so make sure we don't
destroy it even when "everyone starts muted" is set, we'll just mute it.

Fixes: jitsi#10053

* chore(deps): update react-native-webrtc@1.92.2

Fixes a crash on Android

* fix: Fixes displaying country names which has multiple names listed.

Some countries have multiple names listed in i18n-iso-countries, like US -> ['United States of America', 'USA'].

* fix(av-moderation) Check for moderation support

Show av moderation toggles on mute all / stop everyone's video dialogs only if moderation is supported
Show Ask to Unmute only for moderators

* fix: Skips setting language for transcriptions if not enabled.

* chore(deps) lib-jitsi-meet@latest

* fix: Avoids sending empty nick in presence.

jitsi/lib-jitsi-meet@afc1c34...b5288c2

* fix(config, reactions) Added config option to disable reaction sounds (jitsi#10046)

* fix(reactions) Remove vpaas check for reactions webhook (jitsi#10089)

Reactions will be sent if webhookProxyUrl is set in config.js

* fix(av-moderation) Show Mute button when participant is unmuted (jitsi#10090)

Show Mute button instead of always showing Ask to Unmute

Added aria-label

* fix(av-moderation) Fix Ask to Unmute

Make ask to unmute work even if the participant is already whitelisted for audio

* call module that checks the jwt against the access service

* lang: Update main-it.json (jitsi#10088)

* Update main-it.json

* Update main-it.json

added a missing comma...

* Update main-it.json

added all the missing commas...

* Update main-it.json

will this be the last comma I left behind? Who knows...

* lang: added and translated all missing keys on turkish translation (jitsi#10050)

* feat(screenshot-capture) Updated screensharing screenshot capture

Changed screen capture to non effect. Effects are used to alter the stream, this feature does not need to alter the stream, it just needs access to it

Changed image diff library. Previous library diff’ed the whole image, the new one has en early return threshold

Use ImageCaptureAPI to take the screenshot. Added polyfill for it and polyfill for createImageBitmap

Added analytics

* fix(av-moderation) Update function that calculates quick action button

* feat(config): Add config option for making display name read only

* fix(tracks) Always add audio track on Safari.
This fixes an issue where Safari users cannot hear remote audio if they join audio/video muted. The browser throws the following error when the application tries to execute play on the audio element: 'NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission.' This started happening in Safari 15.

* janeify the app a little bit

* change meta browser icon to jane

* Update README.md

* force mobile to open desktop view

tweaks for mobile browser

* use jwt token auth server for development

* send beacon back to jane when exiting a chat

* Update README.md

* TEL-53 add window.close() to "hangup" function

TEL-38 remove info-dialog button and popover.

* TEL-72 & store the last visited jwt URL to localstorage, bring back IOS mobile browser checking condition

* replace watermark.png

* fix the thunk getState issue in react native

* switch "DEFAULT_SERVER_URL" to jwt server url for React native. and stop sending beacon temporarily.

* better refresh last visited url logic

* move the refresh last url function to connection.js.

* send started_at back to Jane

* remove video resolution constraint setting for firefox

* Add bugsnag to bundle and change the app store redirecting link url.

* remove refresh last visited URL.

* update sendBeacon condition for Test call.

* keep browser's url params

* add refresh page button

* Update jane video chat logo and add version number to index.html's static asset url

* add bugsnag notify action to conference and connection listener

* update RefreshButton component

RefreshButton will only show if there is only one participant and no remote tracks from RTC.

* add "isPad" condition for redirecting user to app store in safari on ipad.

* update index.html's js/css assets src path version.

* hide "screen share" button on android device.

* Update conference reducer and action for dispatching the correct startedAt time to participant_left endpoint.

Also bring back the duration timer.

* remove unused code

* rename "CONFERENCE_STARTED_TIME_CHANGED"  to "SET_CONFERENCE_START_TIME"

* disable using Gravatar or other avatar services

* fix the refresh button is blocking the setting button issue

* front end app will not use prosody's conference duration.

* remove watermark logo's a link

* Remove "Beer kiss face blush heart" from smileys emoji.

* html-webpack-plugin for generating assets version number

* add WaitingMessage component as the reminder for the first call participant

* update index.html & webpack config

* fix watermark issue in welcome page

* remove unused code and update the appointment start timestamp condition

* fix moment locale issue in "WaitingMessage" component.

* make eslint happy

* make flow & lint happy.....

* update the conferenceWillLeave send beacon condition.

* Copied template from janeapp/jane

* Remove sections not relevant to this repo

* Add note/link: how to test video-chat inside Jane Desktop locally

* Copy relevant updates from template in janeapp/jane

* Remove parts irrelevant to this repo

* only instantiate bugsnag client in production env.

* add ProximaNova regular thin semi-bold fonts

* Merge pull request #38 from janeapp/IMPT-3-Create-custom-events-and-property-for-sending-more-participant-statistics-data-to-amplitude

* Merge pull request #37 from janeapp/TEL-277-Feature-flag-for-Selectable-HD-quality-(web)

[TEL-277] Feature flag for selectable hd quality (web)

* Merge pull request #45 from janeapp/IMPT-398-Only-send-the-Poor-connection-events-to-Amplitude

[IMPT-398] Only send the Poor connection events to Amplitude

* Merge pull request #51 from janeapp/IMPT-362-Pad-the-video-so-it-can-be-a-max-of-N-pixels

[IMPT-362] Pad the video so it can be a max of N pixels

* Merge pull request #53 from janeapp/SCH-263-HD-video-quality-alert

[SCH-263] HD video quality alert

* Merge pull request #50 from janeapp/IMPT-41-Use-the-time-format-from-Jane

[IMPT-41] Use the time format from Jane

* Merge pull request #25 from janeapp/TEL-290-Jane-waiting-area-component

[IMPT-60] Telehealth waiting area/ practitioner tool (web)

* Merge pull request #55 from janeapp/Fix-sd-video-feed-is-too-small

[Fix] SD Video feed is too small

* Merge pull request #56 from janeapp/SCH-301-Make-language-consistent-in-Waiting-Room-UI

[SCH-301] Make language consistent in Waiting Room UI

* Build a nginx web container using the compiled video-chat app (#67)

* Build a nginx web container using the compiled video-chat app

* Add apple-app-site-association file

* Inject bugsnag api key from env before compiling

* Log real client IPs in nginx container (#78)

* Set nginx real IP header and log format

This is so we log the IP that the client is connecting from, and not
just the ALB IP.

* Activate custom log format

* Merge pull request #60 from janeapp/SCH-322-Update-the-authentication-failed-error-modal-in-jitsi

[SCH-322] Update the "authentication failed" error notification in jitsi

* Merge pull request #62 from janeapp/SCH-340-video-chat-app-sends-the-participant-left-post-request-twice-to-jane

[SCH-340] Video chat web app sends "left waiting room" signal twice to Jane when user hangs up the call

* Merge pull request #70 from janeapp/LANG-19-Telehealth-Translations-jitsi-web-app

[LANG-19] Telehealth Translations (Web app)

* Merge pull request #79 from janeapp/fix-contrasting-brightness-shades-in-the-video

[Fix] strange contrasting brightness shades in the video

* Merge pull request #85 from janeapp/SCH-460-Telehealth-video-is-zooming-in-and-out-during-call

[SCH-460] Telehealth video is zooming in and out during call (web app)

* Merge pull request #76 from janeapp/SCH-393-Display-Treatment-length-not-scheduled-length-in-Appointment-Moda

[SCH-393][Web app] Display Treatment length not scheduled length in Appointment Modal

* Merge pull request #69 from janeapp/SCH-373-Move-Appointment-details-modal-to-the-side-of-the-screen

[SCH-373] Move Appointment details modal to the side of the screen

* Merge pull request #82 from janeapp/jane-online-appointments-activity-log

Jane Online Appointments Activity Log [Web app]

* Merge pull request #89 from janeapp/increase-the-z-index-of-the-waiting-room-modal

Increase the z-index of the waiting room modal

* Merge pull request #88 from janeapp/SCH-525-Analytics-events-to-track-waiting-room-socket-message-and-admit-button-actions

[SCH-525][Web app] Analytics events to track waiting room socket message and admit button actions

* Merge pull request #92 from janeapp/make-the-modal-text-responsive

Make the waiting room modal text responsive

* Merge pull request #93 from janeapp/fix-video-zooming-in-and-out-on-firefox

[Fix] video is zooming in and out on firefox

* Merge pull request #91 from janeapp/polling-fallback-when-socket-fails

[SCH-531]Implement polling fallback for waiting room if websocket fails

* Merge pull request #96 from janeapp/fix-connectionPromise-is-undefined

[SCH-665] Conference connection is undefined when user joins the session from waiting room [web app]

* Enable the nginx stub_status endpoint for datadog monitoring

* Merge pull request #100 from janeapp/fix-connectionPromise-is-undefined-follow-up-PR

Fix connection promise is undefined (follow-up)

* Disable e2eping

* Change builder stage from node:latest to node:lts

Looks like latest switched from node 16 to 17 yesterday, and this has
errors.

* Update builder image to use node:16 instead of node:lts

To make sure we pin node version 16

* waiting room button ui fix

* remove unused toolbar buttons.

* Remove testing section which effectively enables firefox simulcast

Also add some default values to make sure they are set as expected

* Allow setting channelLastN with env var

* Disable unneeded features and reduce minimum height constraint

* Go back to 180 minimum height

It doesn't go any lower in my testing

* disable the reactions menu.

* disable jitsi remote control

* fix lint & flow errors

* Do not instantiate Transport Object for RN webview page & remove unused code

* remove unused button for test call

* stop showing the room name and video quality display in conference info.

* Change domain name from meet.jitsi to meet.jane

(cherry picked from commit ad5eacc)

Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>
Co-authored-by: Hristo Terezov <hristo@jitsi.org>
Co-authored-by: Alex Bumbu <alex.bumbu@8x8.com>
Co-authored-by: José Luís Andrade <32515675+jluisfa@users.noreply.github.com>
Co-authored-by: chagai95 <31655082+chagai95@users.noreply.github.com>
Co-authored-by: cfriedlander <chagai.friedlander@aarenet.com>
Co-authored-by: Mejans <61360811+Mejans@users.noreply.github.com>
Co-authored-by: phict <phict4@hotmail.com>
Co-authored-by: hmuresan <horatiu.muresan@8x8.com>
Co-authored-by: tmoldovan8x8 <62697631+tmoldovan8x8@users.noreply.github.com>
Co-authored-by: Cross <github@dillfrescott.com>
Co-authored-by: Vlad Piersec <vlad.piersec@8x8.com>
Co-authored-by: Andrei Gavrilescu <51706180+andrei-gavrilescu@users.noreply.github.com>
Co-authored-by: Jaya Allamsetty <jaya.allamsetty@8x8.com>
Co-authored-by: Jaya Allamsetty <54324652+jallamsetty1@users.noreply.github.com>
Co-authored-by: Saúl Ibarra Corretgé <s@saghul.net>
Co-authored-by: Tudor D. Pop <tudor.dan.pop7@gmail.com>
Co-authored-by: vp8x8 <37841821+vp8x8@users.noreply.github.com>
Co-authored-by: abora8x8 <56257143+abora8x8@users.noreply.github.com>
Co-authored-by: Horatiu Muresan <39557534+horymury@users.noreply.github.com>
Co-authored-by: scott boone <sawall@users.noreply.github.com>
Co-authored-by: ashiqhassan95 <ashiqhassan95@gmail.com>
Co-authored-by: Andrei Gavrilescu <gavrilescu.andrei90@gmail.com>
Co-authored-by: dimitardelchev93 <43634401+dimitardelchev93@users.noreply.github.com>
Co-authored-by: Izak Glasencnik <izak.glasencnik@gmail.com>
Co-authored-by: robertpin <robert.pin9@gmail.com>
Co-authored-by: csett86 <csett86@web.de>
Co-authored-by: Paweł Domas <pawel.domas@jitsi.org>
Co-authored-by: Дамян Минков <damencho@jitsi.org>
Co-authored-by: Pawel Domas <2965063+paweldomas@users.noreply.github.com>
Co-authored-by: Avram Tudor <tudor.potecaru@gmail.com>
Co-authored-by: Alexey Matveev <develop.iapps@gmail.com>
Co-authored-by: Alexey Matveev <malex@1forma.ru>
Co-authored-by: titus.moldovan <titus.moldovan@8x8.com>
Co-authored-by: Damien Fetis <damien.fetis@renater.fr>
Co-authored-by: Ali Alhaidary <75235623+ali-alhaidary@users.noreply.github.com>
Co-authored-by: Tudor-Ovidiu Avram <tudor.potecaru@8x8.com>
Co-authored-by: alexbratu92 <alexbratu92@gmail.com>
Co-authored-by: chipechop <chipechop@users.noreply.github.com>
Co-authored-by: Suleyman BİLGİN <hi@suleyman.dev>
Co-authored-by: zain <zain@jane.app>
Co-authored-by: Zain Amarshi <zamarshi1@gmail.com>
Co-authored-by: Ivan Jiang <>
Co-authored-by: gerbus <christopher.x.gerber@gmail.com>
Co-authored-by: Chris Warren <chris.warren@jane.app>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
demoed Demoed with a PO or key stakeholder Risk - Zero Zero risk of disruption to codebase or infrastructure.
4 participants