in src/handlerLambda/callForwardHandler.py [0:0]
def assign_number_to_VC(queried_number, voice_connector_ID):
number = queried_number["PhoneNumber"]["E164PhoneNumber"]
logger.info("Assigning {} to Voice Connector {}".format(number, voice_connector_ID))
# Disable and delete the associated SIP Rule
if queried_number["PhoneNumber"]["Status"] == "Assigned":
chime_client.update_sip_rule(
SipRuleId=queried_number["PhoneNumber"]["Associations"][0]["Value"],
Name=queried_number["PhoneNumber"]["Associations"][0]["Name"],
Disabled=True,
)
chime_client.delete_sip_rule(SipRuleId=queried_number["PhoneNumber"]["Associations"][0]["Value"])
# Wait for the status to be changed to Unassigned
while queried_number["PhoneNumber"]["Status"] == "Assigned":
time.sleep(2)
queried_number = chime_client.get_phone_number(PhoneNumberId=number)
# Set Product Type to VC
chime_client.update_phone_number(PhoneNumberId=number, ProductType="VoiceConnector")
# Associate number with a Voice Connector
vc_associate_response = chime_client.associate_phone_numbers_with_voice_connector(
VoiceConnectorId=voice_connector_ID,
E164PhoneNumbers=[
number,
],
ForceAssociate=True,
)
return vc_associate_response