[asterisk-bugs] [JIRA] (ASTERISK-29297) say: Y2021 problem – Asterisk cannot say year 2021 in Dutch
Asterisk Team (JIRA)
noreply at issues.asterisk.org
Thu Mar 11 11:48:17 CST 2021
[ https://issues.asterisk.org/jira/browse/ASTERISK-29297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Asterisk Team updated ASTERISK-29297:
-------------------------------------
Target Release Version/s: 18.3.0
> say: Y2021 problem – Asterisk cannot say year 2021 in Dutch
> -----------------------------------------------------------
>
> Key: ASTERISK-29297
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-29297
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Core/Internationalization
> Affects Versions: 16.9.0, 18.2.0
> Reporter: Jacek Konieczny
> Severity: Major
> Target Release: 16.17.0, 18.3.0
>
>
> Our customers reported voicemail menu failing when about to say a message date. Logs show missing sound:
> {noformat}
> Feb 17 09:10:34] -- <PJSIP/ykmf7-0000010d> Playing 'vm-password.alaw' (language 'nl')
> [Feb 17 09:10:38] > 0x7f55004b0650 -- Strict RTP learning complete - Locking on source address xxxxx:11978
> [Feb 17 09:10:39] -- <PJSIP/ykmf7-0000010d> Playing 'vm-youhave.alaw' (language 'nl')
> [Feb 17 09:10:40] -- <PJSIP/ykmf7-0000010d> Playing 'digits/1.alaw' (language 'nl')
> [Feb 17 09:10:40] -- <PJSIP/ykmf7-0000010d> Playing 'vm-first.alaw' (language 'nl')
> [Feb 17 09:10:41] -- <PJSIP/ykmf7-0000010d> Playing 'vm-message.alaw' (language 'nl')
> [Feb 17 09:10:41] -- <PJSIP/ykmf7-0000010d> Playing 'vm-received.alaw' (language 'nl')
> [Feb 17 09:10:42] -- <PJSIP/ykmf7-0000010d> Playing 'digits/day-1.alaw' (language 'nl')
> [Feb 17 09:10:43] -- <PJSIP/ykmf7-0000010d> Playing 'digits/1.alaw' (language 'nl')
> [Feb 17 09:10:43] -- <PJSIP/ykmf7-0000010d> Playing 'digits/mon-1.alaw' (language 'nl')
> [Feb 17 09:10:45] -- <PJSIP/ykmf7-0000010d> Playing 'digits/2.alaw' (language 'nl')
> [Feb 17 09:10:45] -- <PJSIP/ykmf7-0000010d> Playing 'digits/thousand.alaw' (language 'nl')
> [Feb 17 09:10:47] WARNING[26658][C-000000b3]: file.c:789 ast_openstream_full: File digits/21 does not exist in any format
> [Feb 17 09:10:47] WARNING[26658][C-000000b3]: file.c:1262 ast_streamfile: Unable to open digits/21 (format (alaw)): No such file or directory
> [Feb 17 09:10:47] WARNING[26658][C-000000b3]: say.c:472 wait_file: Unable to play message digits/21
> [Feb 17 09:10:47] == Spawn extension (from-internal, *98666, 6) exited non-zero on 'PJSIP/ykmf7-0000010d'
> {noformat}
> I traced the problem to the {{ast_say_date_with_format_nl()}} function and it clearly does not support years later than 2020. It was an older Asterisk version (16.9.0), but I can see the same, wrong, lazy code in the current 18.2.0 release:
> {noformat}
> case 'Y':
> /* Year */
> if (tm.tm_year > 99) {
> res = wait_file(chan, ints, "digits/2", lang);
> if (!res) {
> res = wait_file(chan, ints, "digits/thousand", lang);
> }
> if (tm.tm_year > 100) {
> if (!res) {
> /* This works until the end of 2020 */
> snprintf(nextmsg, sizeof(nextmsg), "digits/%d", tm.tm_year - 100);
> res = wait_file(chan, ints, nextmsg, lang);
> }
> }
> {noformat}
> There is no problem when English language is used, but it may affect other than Dutch languages too (I have not checked that).
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list