User feedback reporting should enforce IETF BCP 47 language formatting
User feedback reporting currently collects language information for the app audio, app content, and app strings (which are based on the device system's language).
Language locales used here uses the device's system language and should be the app_string_language_definition (see this comment below).
The corresponding backend domain objects are here.
Language locales used here in Android codebase represent the app's language and audio settings and should be the content_string_language_definition and audio_translation_language_definition (see this comment below).
The corresponding web backend definition is here, and the backend domain objects are here.
@jcqli can you please fill this in?
Some thoughts per discussion:
- We should be tracking three languages for locale context: app string, content string, and audio (all of which are enums)
- App string enum can be undefined (unspecified), so we should include an IETF BCP 47 language code for app string
- Backend validation & API needs to be updated per the above
- Backend model probably just needs to store the language enum strings for each of the three language types, and a language code for app strings
See: https://github.com/oppia/oppia-android/blob/develop/model/src/main/proto/languages.proto#L9 (this is what we should be using for all three).
Actually, I think we can just shove this into the locale context: https://github.com/oppia/oppia-android/blob/develop/model/src/main/proto/languages.proto#L76.
Edit: actually, we should probably include one of these for each of the three language types: https://github.com/oppia/oppia-android/blob/develop/model/src/main/proto/languages.proto#L196.
Edit2: to further simplify, let's just use LanguageSupportDefinition:
LanguageSupportDefinition app_string_language_definition = ...;
LanguageSupportDefinition content_string_language_definition = ...;
LanguageSupportDefinition audio_translation_language_definition = ...;
These would replace language codes/enums since they contain the full definitions for each.
@jcqli can you please fill this in?
Done!
Thanks!
On Fri, Oct 15, 2021 at 10:35 AM jcqli @.***> wrote:
@jcqli https://github.com/jcqli can you please fill this in?
Done!
— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/oppia/oppia-android/issues/3924#issuecomment-944476786, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADDB3PQLRURGZYVUK5SUDP3UHBQ45ANCNFSM5F3WYFLQ .