Skip to content

Commit 04e9e56

Browse files
committed
feat(portaswitch): add voicemail_not_configured exception handling
1 parent 43d23a3 commit 04e9e56

2 files changed

Lines changed: 15 additions & 0 deletions

File tree

app/bss/adapters/portaswitch/adapter.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
refresh_token_invalid_error,
5959
addon_required_error,
6060
session_upgrade_needed_error,
61+
voicemail_not_configured,
6162
)
6263
from .serializer import Serializer
6364
from .types import (
@@ -1042,6 +1043,8 @@ def retrieve_voicemails(self, session: SessionInfo, user: UserInfo) -> UserVoice
10421043
fault_code = extract_fault_code(error)
10431044
if fault_code in ("Client.Session.check_auth.failed_to_process_access_token",):
10441045
raise access_token_expired_error()
1046+
elif fault_code in ("Server.Account.unified_messaging_disabled",):
1047+
raise voicemail_not_configured()
10451048

10461049
raise error
10471050

@@ -1072,6 +1075,8 @@ def retrieve_voicemail_message_details(
10721075
fault_code = extract_fault_code(error)
10731076
if fault_code in ("Client.Session.check_auth.failed_to_process_access_token",):
10741077
raise access_token_expired_error()
1078+
elif fault_code in ("Server.Account.unified_messaging_disabled",):
1079+
raise voicemail_not_configured()
10751080

10761081
raise error
10771082

@@ -1105,6 +1110,8 @@ def retrieve_voicemail_message_attachment(
11051110
fault_code = extract_fault_code(error)
11061111
if fault_code in ("Client.Session.check_auth.failed_to_process_access_token",):
11071112
raise access_token_expired_error()
1113+
elif fault_code in ("Server.Account.unified_messaging_disabled",):
1114+
raise voicemail_not_configured()
11081115

11091116
raise error
11101117

@@ -1140,6 +1147,8 @@ def patch_voicemail_message(
11401147
fault_code = extract_fault_code(error)
11411148
if fault_code in ("Client.Session.check_auth.failed_to_process_access_token",):
11421149
raise access_token_expired_error()
1150+
elif fault_code in ("Server.Account.unified_messaging_disabled",):
1151+
raise voicemail_not_configured()
11431152

11441153
raise error
11451154

@@ -1160,6 +1169,8 @@ def delete_voicemail_message(self, session: SessionInfo, message_id: str) -> Non
11601169
fault_code = extract_fault_code(error)
11611170
if fault_code in ("Client.Session.check_auth.failed_to_process_access_token",):
11621171
raise access_token_expired_error()
1172+
elif fault_code in ("Server.Account.unified_messaging_disabled",):
1173+
raise voicemail_not_configured()
11631174

11641175
raise error
11651176

app/bss/adapters/portaswitch/exceptions.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,3 +74,7 @@ def missing_tokens_error():
7474

7575
def unsupported_file_format_error():
7676
return WebTritErrorException(422, "Not supported file format", "unsupported_file_format")
77+
78+
79+
def voicemail_not_configured():
80+
return WebTritErrorException(422, "Voicemail is not configured", "voicemail_not_configured")

0 commit comments

Comments
 (0)