85 scenario set default time zone for all joined people in a public chat#98
85 scenario set default time zone for all joined people in a public chat#98
Conversation
…support timezones
bot/commands.py
Outdated
| unschedule_personal_vacation=_("Unschedule the personal vacation."), | ||
| # info settings | ||
| get_chat_state=_("Get the chat state that I store."), | ||
| guess_time_zone=_("Get list of possible time zones based on given current time") |
There was a problem hiding this comment.
Check grammar. Insert a full stop at the end.
bot/handlers.py
Outdated
| Please set your timezone first | ||
|
|
||
| You can do this with /{set_meetings_time_zone} command |
bot/handlers.py
Outdated
| ) | ||
| return | ||
| except UnknownTimeZoneError: | ||
| await message.reply("Such time zone does not exist, please chack the spelling") |
There was a problem hiding this comment.
Need to use .format so that this message can be localized.
bot/handlers.py
Outdated
| chat_state.meeting_time = meeting_time | ||
| chat_state.topic_id = topic_id | ||
| await save_state(chat_state=chat_state) | ||
| argument = message_text.split(" ")[1] |
bot/handlers.py
Outdated
| await message.reply("Sorry, no time zones found") | ||
|
|
||
| return | ||
| except IndexError: |
There was a problem hiding this comment.
Why do you need an IndexError? It seems like you can use just if-s without try .. except.
bot/handlers.py
Outdated
| await bot.edit_message_text( | ||
| message_id=callback_query.message.message_id, | ||
| chat_id=chat_state.chat_id, | ||
| text="Time zone is successfully set to {time_zone}" |
There was a problem hiding this comment.
Use .format to make this message localizable.
|
|
||
| export const machine = createMachine({ | ||
| /** @xstate-layout N4IgpgJg5mDOIC5QCUwGMwEsBuYAEATmALaYB2EYBseAhgEYD2ArgC56wDWmADj5Hgi1MAGwCeeYmDCtyUPAEdmcWYzKwAdAFVYVDQEkIIsAGIAKgAt8aZgSJl2sqXkywEeADwARAIL6AMgCaAPoAsgCi4Wb6AHIA4sHREQB8ANoADAC6iKA8jLCYqmQ5IAAeiABMVRoAHADMFTXpdQBsACwAjOlNAJwANCBiiAC0FQDsNRoArBPpUzUtU1NtNRUtLQC+GwOoGDj4RKQUVDQMLOxcvPwQgsLiktKyZPJKKphqmjp6hsYmXwR4NAWWjPOCEEjkSgA-gEd4QDLZJAgPIFIolcoIOrNDQNdo9KZ1Go1KY9Ho1AZDBBtKY4sYVHp1akNOldHqbbYgXZYXDgo5Q05MNgcbh8ARCUQSKQyOSKZSwIqfXQEDQABVoBFkaF4tFYYPIeFYVluEoe0ueJlQPBEmDBrEYeDU9zU+Fe8veZARJRRhXd6MQHTZGg6HTGPXSFQ6JJDHRaFMQLUjGjWYzaWJaa2D7J26G5Bwhx2odEFFxF12N9ylTxecoV2iVGi8jDBsEYUkNchM+lYAHIaE58AAzRgA2i8yFUT1I71opEY4YNCrTNqNAltTrpMk9NpxhAMuoafFsqrtFqkqYdLbZvY8w7jwtnIWXUU3cUVx4y121-4Nps0FttiwO3+QFgVBGhbwLPAYThSdcnyH01D9BAKg3JMt0aUMEyJdIUx3YY2haDR0g6GpIzGDo6jGSj1jGLNORzfYxwLAVzmFK4xTuSV32eWU3g+Os9DVDVMC1HgdT1MgDSNV8uLNeRaCgYQyD+JUODAChYFg5F4JnUAMTGVC1koqpCRmUj+kGRAajGMYcRWAM6g6cZ8Uoy96OvPM+ROItWKfMsZNNKteLdfiACFGFYDQAAkQSMTy7ygqg4RAkEYBMLTp19WdEAadID3IsYpnTFo6lKgzY0shAnLy0kmTmKZmlPVM3K5RiIP5HzH1LDiTUrD8a3dTRwsimKKGMJioUS2FGBuIFUtMVIOkRODUSyvTEHSHd0hahib3zDqHxLdiX04wL+r49QNGGhtTr655oti8b2qoPAhwBb8fDIWhxAALxlYCiFgPJ1DgdKsi9HS1rKSoqkXU8ioanoU3GCid2DYMkxWLEmiqay6imHaPIm7zDrY59y1koLP0Gq6Ipu3ruKgB6xviyC3rwb8AGV1JuUdnoIMHlu01bEOyqrlxpVMVlI9I2g3akKspLpzzs0qWm6Ci1x6Qnc2J+9izJ-zbsZ4La2urxjbk5m4r117hw5+tuYoOg9fSpaIZF4oxZjJGNDaLc6iR+l6iaRXEDZDogwaJzT1x6ydba-aSYNvyerfOTTZp83Lara2nqTgF2e-UabeGlwaHoERGDQThIBMUp5XEjRaAHXUCAACga9IAEoLV21mDpT7qToZjPqbCumLdH3OS-zrzC-t4vHvwMvXDwSvq9r+FwanSHRfWqr5jaJdV3xakKLDhB6kI9WWnqCpGRTNME72+eWK646KbOnjx8u7Pp7kBoAAwmoCAzA0COGkjnDsZddAaQynvL2B8OgERpEVaybQbILEjKsHcNQejTDDE5c8jUSJORfgPZOvlh5fzutWC6Q1J7QPursYcNxG6sGYDQRgA5aFwFgApMERclTuBBLAAA7lQSAAB6ZgX11CSKIBAeuHCwDN1blQTu6Qe59yJvzd+R1yYBToZnCekUp7p1zqwgg7DWA6i4Q6Xhxj+GCJoMIqgoiFFSIgLI+REjvEIM9khXGhEKINVhmSQk6RL5ORIkRKY9J8QJIwvjChesDGGzTpTc6IVLrhDINgTABA1BSAcCpF6jB+DqCkvgFUzBK4iRSqwQJCEkHQwQJtSq20OStVfneDJqcR6WJybWOpDS0BNKDD0RoatzBWEksBOBEBNI7xWq0pC5UcQRmIurUM4Zplo2DMfcqBFKKFQjATHp-d0mdUMUbABP8Br8TGdaCZc1IrjBmZg8pAIiC0GWTUh4sABEwBabpdpoxZYHhmNM2qOENwWUpC0UM0xVgRhqP7Mk5EahpP0bczJQzsmPIYaqeprzJmrEogRMYgsPbrLFmsA8jkzmMgDBUBJqNKro0ItsqlFFpmlQqLiguAyaHOLHk8y6LzGnvIPA-DF7KVF2N1OotuWidG9Mofrahn9xVU0lZoaVbzgSRQFQqqYYKoYYgvoRQqy4bLjHqCROoO5zw30KgsaJ1Lr7CrfviwZfCJUkqNZMixRL5BSGBa4n54J-k0EjSCuAlr97tMcouaJNk9kzCWHfHcVRI6B2RZg88VEExjF9f0-1YrmH0NyYaslMqTX02GTxBNri5X4wVXM9S68IpqXgas4W9LkEbjQdM-ZG4UHdDRgkpM1kejozWLLYMFbmJVt1TW0xUqG3Gp1M28NQLE2aDNcjbtkkmAXB5isoWmUU3WtHYQlCdIEYUQqDuZkGhsVrCJNi6WdFNU3NJgGvVIyab-F7HgFUsJsDiSaXgcRhQLB4GunjDFhVaW7yCWLRkeVCpYjmBMO+5UXVcofrZWWKwwxHwWEKq5eiRXrqMZu3+ioqAQagzgWD7z4OIeQ3TVDxa3Y3sQUhdGmN+UzO0RfbcXLHIEIWBMAy-t6SLHLW5MgM04AlAA3ioD1aHm1oVHS8Fc55i2Uomy9FpFSIycpPhAiWzWj4yRiSZ9q7B46qYwZrdrGCDGatSMdleVrLaLWLfEiMw32VXZYRfEBkQztAqARDc7mqEfy8y2wzYH6w-DAP5u9IwUFJjKgk-E7RokYsvoyY+zkiTspC2SC8dHda6aHhu7zLGBLKiEpqbUuoaD6kNPgEDzx8ttIxFUSW2i1x3wSYHEMUXKTLkIssCMy57UoWmal7V6X7mZZ811n8zZWwyEAqNzDw6IUoUXCF8M6xokRbpDuTBxyiqphJMigMdJtuiva-tzr34esiT6xJQFI35KKXIGN0TIZP2TrmAyTB6sQw7losffBSX1YEhKjGHFzXE5+r039g9nXhrQ+9ksfc-tUxB0iaHPCKYgwEgZDZ+FGLLlXhawxonGWScGtpiNZettoIzRSqCcnyDkd+wDrTkO0S0aBwIUl+o3RwwpI5+5LnhO2u8+-llsx+69cS-aTGYi0uad0jp-L2TQY75BypdM1Y4YfuMb23zkl-9Mt5y1Xbd6SpjfWrxObwOlu5dVcDkmNlDRA6lSnXUF3PO3d64O578N3vbbuOVJ9b6Yg-o8QBnAYGuh4AXZM-6BY+5FgLqRnSOkxFFuIGW0uKzmCzzO-x30tdiesnJ9J0wgz6f+a+4dnoJ2vM9YB-L4ztccxVcs4vjuBMBCkbmQSRMU3-7rmtc80nkxffzE1sHwXYfS8WZ8fYGvDeNdICT6qkSSYjQYwhi3AZMM5JKrWXIxudYyLlduY71qr9rrnvvzqnnrsAqAuApAsNjWrfiGJRLSFXosBimuCgmjNotLiRKsPgnMO0MSAnjrrvibPvobnQhoNYrYvYtwk4sbFGjAG4ovCInQF4kor4mIoojfqXgFlVEHtTiHsHFEjEuyjSMrtjGrnjBrjptzoQT3iASSvkoUsUmQKUqwLfsMMzrSJZlgWQrZiMM5kRNos+slqVPMAQTvrIcQfziGu8rfsVNMNEurKgurIyJfMMCRAQvMAkgjK0AjNrAAYBjIYSr3lYTupMmyvUK0LYU0H7M0MRGZgunVugdEpjIHBVjCignjpzgTpWt3kEXIXWqSuMpMp8vUJgrfjXn7NGMuAjqmESKjgGJjKGBRN0MuKkv4dvrthYUGgUdYU2pSimMirYYVObk5JbvXjGIcviHOq5iSMltSGplkZ3h5p0XkZYcGqEbKmahLFEZMJ0HweZA-KSK6r7JSiZPjF9pGGYSsYGvqusUUbKlBmAIUiwPGi4vQUMcfA1Pdk4c0ARHhF0IuGsA-MlptvSEllcXcl0bcT0RsU2mGsnm2u8VwQVlVPXtMM+oSORG-nMHhHLNMC4ZgihPgtSAuhCQSjcaBs8rCXuvCSYoiXAB2kfBUHAdEnlJFgSNZAGKrlMM9ranViVGmKeDhG0GScBsxiEfcXCZuvScevKsjCyerOieypiVyU0DydFuyqijZIrliJNn4YsYAa7lCZSdupKTSdKW8QyfSISGuEVAqWyRiZydieqUtlCpiRGIsASLRMrKKfpv9vzuBjQBxjBrqHBghoaOfrfimLZE0F0Jgq0NSPGWjJ0LZAVLXtSN0OCe0dIeYasd0V+EqOxtBlxiajxhGShlRGhlMAqZMAsAuiZGSBLDEkfNMOeAsMSOMFRCRL6cTsESSoGZBsWaGdxuGUhtdI8c8Q4jKVGVMbGbLKWomVRDOnMERHLCSIccsAmPHlsBsEAA */ | ||
| /** @xstate-layout N4IgpgJg5mDOIC5QCUwGMwEsBuYAEATmALaYB2EYBseAhgEYD2ArgC56wDWmADj5Hgi1MAGwCeeYmDCtyUPAEdmcWYzKwAdAFVYVDQEkIIsAGIAKgAt8aZgSJl2sqXkywEeADwARAIL6AMgCaAPoAsgCi4Wb6AHIA4sHREQB8ANoADAC6iKA8jLCYqmQ5IAAeiABMVRoAHADMFTXpdQBsACwAjOlNAJwANCBiiAC0FQDsNRoArBPpUzUtU1NtNRUtLQC+GwOoGDj4RKQUVDQMLOxcvPwQgsLiktKyZPJKKphqmjp6hsYmXwR4NAWWjPOCEEjkSgA-gEd4QDLZJAgPIFIolcoIOrNDQNdo9KZ1Go1KY9Ho1AZDBBtKY4sYVHp1akNOldHqbbYgXZYXDgo5Q05MNgcbh8ARCUQSKQyOSKZSwIqfXQEDQABVoBFkaF4tFYYPIeFYVluEoe0ueJlQPBEmDBrEYeDU9zU+Fe8veZARJRRhXd6MQHTZGg6HTGPXSFQ6JJDHRaFMQLUjGjWYzaWJaa2D7J26G5Bwhx2odEFFxF12N9ylTxecoV2iVGi8jDBsEYUkNchM+lYAHIaE58AAzRgA2i8yFUT1I71opEY4YNCrTNqNAltTrpMk9NpxhAMuoafFsqrtFqkqYdLbZvY8w7jwtnIWXUU3cUVx4y121-4Nps0FttiwO3+QFgVBGhbwLPAYThSdcnyH01D9BAKg3JMt0aUMEyJdIUx3YY2haDR0g6GpIzGDo6jGSj1jGLNORzfYxwLAVzmFK4xTuSV32eWU3g+Os9DVDVMC1HgdT1MgDSNV8uLNeRaCgYQyD+JUODAChYFg5F4JnUAMTGVC1koqpCRmUj+kGRAajGMYcRWAM6g6cZ8Uoy96OvPM+ROItWKfMsZNNKteLdfiACFGFYDQAAkQSMTy7ygqg4RAkEYBMLTp19WdEAadID3IsYpnTFo6lKgzY0shAnLy0kmTmKZmlPVM3K5RiIP5HzH1LDiTUrD8a3dTRwsimKKGMJioUS2FGBuIFUtMVIOkRODUSyvTEHSHd0hahib3zDqHxLdiX04wL+r49QNGGhtTr655oti8b2qoPAhwBb8fDIWhxAALxlYCiFgPJ1DgdKsi9HS1rKSoqkXU8ioanoU3GCid2DYMkxWLEmiqay6imHaPIm7zDrY59y1koLP0Gq6Ipu3ruKgB6xviyC3rwb8AGV1JuUdnoIMHlu01bEOyqrlxpVMVlI9I2g3akKspLpzzs0qWm6Ci1x6Qnc2J+9izJ-zbsZ4La2urxjbk5m4r117hw5+tuYoOg9fSpaIZF4oxZjJGNDaLc6iR+l6iaRXEDZDogwaJzT1x6ydba-aSYNvyerfOTTZp83Lara2nqTgF2e-UabeGlwaHoERGDQThIBMUp5XEjRaAHXUCAACga9IAEoLV21mDpT7qToZjPqbCumLdH3OS-zrzC-t4vHvwMvXDwSvq9r+FwanSHRfWqr5jaJdV3xakKLDhB6kI9WWnqCpGRTNME72+eWK646KbOnjx8u7Pp7kBoAAwmoCAzA0COGkjnDsZddAaQynvL2B8OgERpEVaybQbILEjKsHcNQejTDDE5c8jUSJORfgPZOvlh5fzutWC6Q1J7QPursYcNxG6sGYDQRgA5aFwFgApMERclTuBBLAAA7lQSAAB6ZgX11CSKIBAeuHCwDN1blQTu6Qe59yJvzd+R1yYBToZnCekUp7p1zqwgg7DWA6i4Q6Xhxj+GCJoMIqgoiFFSIgLI+REjvEIM9khXGhEKINVhmSQk6RL5ORIkRKY9J8QJIwvjChesDGGzTpTc6IVLrhDINgTABA1BSAcCpF6jB+DqCkvgFUzBK4iRSqwQJCEkHQwQJtSq20OStVfneDJqcR6WJybWOpDS0BNKDD0RoatzBWEksBOBEBNI7xWq0pC5UcQRmIurUM4Zplo2DMfcqBFKKFQjATHp-d0mdUMUbABP8Br8TGdaCZc1IrjBmZg8pAIiC0GWTUh4sABEwBabpdpoxZYHhmNM2qOENwWUpC0UM0xVgRhqP7Mk5EahpP0bczJQzsmPIYaqeprzJmrEogRMYgsPbrLFmsA8jkzmMgDBUBJqNKro0ItsqlFFpmlQqLiguAyaHOLHk8y6LzGnvIPA-DF7KVF2N1OotuWidG9Mofrahn9xVU0lZoaVbzgSRQFQqqYYKoYYgvoRQqy4bLjHqCROoO5zw30KgsaJ1Lr7CrfviwZfCJUkqNZMixRL5BSGBa4n54J-k0EjSCuAlr97tMcouaJNk9kzCWHfHcVRI6B2RZg88VEExjF9f0-1YrmH0NyYaslMqTX02GTxBNri5X4wVXM9S68IpqXgas4W9LkEbjQdM-ZG4UHdDRgkpM1kejozWLLYMFbmJVt1TW0xUqG3Gp1M28NQLE2aDNcjbtkkmAXB5isoWmUU3WtHYQlCdIEYUQqDuZkGhsVrCJNi6WdFNU3NJgGvVIyab-F7HgFUsJsDiSaXgcRhQLB4GunjDFhVaW7yCWLRkeVCpYjmBMO+5UXVcofrZWWKwwxHwWEKq5eiRXrqMZu3+ioqAQagzgWD7z4OIeQ3TVDxa3Y3sQUhdGmN+UzO0RfbcXLHIEIWBMAy-t6SLHLW5MgM04AlAA3ioD1aHm1oVHS8Fc55i2Uomy9FpFSIycpPhAi0xtFP3xg-YMOK6O6100PDdBmt2sYIMZq1Ix2V5WstotYt8SIzDfZVdltrQzTPwf7Yk+M1NXk8wxvTPmW2GbA-WH4YBAt3pGCgpMZUEn4naNEjFl9GTH2ckSdlYWyQXg84nP1WWmO+ZYwJZUQlNTal1DQfUhp8AgeeEVtpGIqiS20WuO+CTA4hhi5SZchFlgRmXPalC0zV2Dx1V1nLfnes-mbK2GQgEJuYeHRClCi4wvhnWNEqLdIdyYOOUVVMJJkUBjpHtqhH9DsHp69+frIlBsSUBeN+SilyCTdEyGT9k65gMkwerEMO5aLH3wRUAicxWiOTvv97VgP7lHZ68NeH3slj7n9qmIOkTQ54RTI51YNnwzEmIml9yGWOveaB9-XLZi85aqmslOaoIqfIPR37AODOQ7RLRoHAhuP6jdHDCky56X2uVs62T4HBrabmJrVL9pMZiKy-p3SRnivSMHgXU0HCqZiRUTaMT0V2WDckv-jlkXtt3EBeuyZ-0eJLeB2twr2rgciLLi6CVQV9r3eMf14L47Pvw1+-5nbd69ZPrfTEH9HiAM4DA10PAIPQWqoLH3IsBdSM6R0mIitxAa2lxWcwWecMSe9dZNTxTphBnM8F2zw7PQTteZ61N9ajBfs5YNV6ISC+O4EwEKRuZBJExzf-uuV5g7KeTH9+N4P2eouA9+9XhXKuNdIBT-9ESSYjQYwhi3AZMM5JKrWXIxudYyLVfPu7-zvvibIfvuoLsAqAuApAmNibhXsVlVFROZrRN9kfGuCgmjNorLiRGzlRu0MSAAXvr3gfobunmAdYrYvYtwk4sbFGjAG4ovCInQF4kor4mIoojfrAVNiHv7GHvLlEjEuyjSKrtjBrnjFrjzjrmuj3oSn3obvkoUsUmQKUqwLfggMMASAQhZtMlZmQrZiMPjAQtojhOynjqVPMPgaToQcAYbiGu8iocVI5k9qgurIyJfMMCRAQrRFUKSIsKRFRO5trn0pIYAZYUGnWqSuMpMmyvUK0HYU0H7M0MRGZg7rglytojyvTtVjCigv4eIYEfthYdIUQcGjupMp8vUJgiofXn7NGMuCjs7u-pSORCrh3hRN0MuKkm1nkQDnciEfqsUREbKpSimMinYYVJbk5Nbk3jGIcviHOiSIVFuOrNSNzjpplsEYUVYf0eSrKmahLLEZMJ0HTovgKqSK6r7JSiZPjL9pGOYT0RsaEaMiUbKlBmAIUiwPGi4rQaMcfA1I4YsM4QRHhF0IuGsA-HjjtvSLjrcQSoGn0WETYU2mGqnm2l8RwaJk3tMM+oSE0erlMHhHLJ+m5lgXLDsjZNCcBsxtYU8YiZuiiXAB2kfBUCoXHnlNFgSNZAGLiW9rao1vHtEqeE7uSfpuTlSQMTSb5nScevKsjMydEqyViRyW-nMHmuyqijZMrliDNtrJ0Vqh7gLkUfCdSXukiSYpKWhISGuEVLKerJieytiZyU0HiZVHLMfNiRGIsASLRMrEKZ7jISSuBjQBxjBrqHBghoaHxsoWiWLCmLZE0F0Jgq0NSAmWjJ0LZMsM0L4YHPSN0D6fqZsWEQGZBtBlxiajxuGShn4cWtaZMAsAuiZGSBLDEkfNMOeAsMSOMFRCRLmUAQ8XlmxoGcWSGdxmGUhtdC8W8Q4pKSoaGDSHGbLKWkmVRDOnMDHijg-GfAmHUFsFsEAA */ |
There was a problem hiding this comment.
Why did you change the layout in this snippet?
bot/filters.py
Outdated
| return False | ||
| chat_state = await load_state(chat_id=callback.message.chat.id) | ||
| return {"chat_state": chat_state} | ||
| if type(callback.message) == Message: |
There was a problem hiding this comment.
I think it's cleaner to do like this:
match message := callback.message:
case Message(): ...
There was a problem hiding this comment.
callback.message may be of type InacessbleMessage which seems to be inherited from Message but doesn't have message_thread_id property.
case Message(): accepts inherited classes, so this may cause an error
|
On my PC, not always gives hints for this query: |
Telegram only allows to set placeholder text right after the bot tag. We can't display different placeholders for different commands. |
…lt-time-zone-for-all-joined-people-in-a-public-chat
e93a499 to
fc30bdb
Compare



Issues