in visualizeConnectData/scripts/mockCTRs/create.py [0:0]
def createCTR(accountId, region, year, month, day):
templateCTR = {
'AWSAccountId': None,
'AWSContactTraceRecordFormatVersion': '2017-03-10',
'Agent': None,
'AgentConnectionAttempts': 0,
'Attributes': {},
'Channel': 'VOICE',
'ConnectedToSystemTimestamp': None,
'ContactDetails': {},
'ContactId': None,
'CustomerEndpoint': {
'Address': None,
'Type': 'TELEPHONE_NUMBER'
},
'DisconnectReason': 'CONTACT_FLOW_DISCONNECT',
'DisconnectTimestamp': None,
'InitialContactId': None,
'InitiationMethod': 'INBOUND',
'InitiationTimestamp': None,
'InstanceARN': None,
'LastUpdateTimestamp': None,
'MediaStreams': [{
'Type': 'AUDIO'
}
],
'NextContactId': None,
'PreviousContactId': None,
'Queue': None,
'Recording': None,
'Recordings': None,
'References': [],
'SystemEndpoint': {
'Address': '+19999999999',
'Type': 'TELEPHONE_NUMBER'
},
'TransferCompletedTimestamp': None,
'TransferredToEndpoint': None
}
templateCTR['AWSAccountId'] = accountId
templateCTR['InstanceARN'] = 'arn:aws:connect:{0}:{1}:instance/{2}'.format(
region,
accountId,
ARN_ID
)
templateCTR['CustomerEndpoint']['Address'] = getCustomerPhoneNumber()
# aabafe69-0d00-4783-9d70-2842c10700b2
charChoice = string.ascii_letters + string.digits
contactId = 'FakeCtr1-'
contactId += ''.join(random.choice(charChoice) for i in range(4)) + '-'
contactId += ''.join(random.choice(charChoice) for i in range(4)) + '-'
contactId += ''.join(random.choice(charChoice) for i in range(4)) + '-'
contactId += ''.join(random.choice(charChoice) for i in range(12))
templateCTR['ContactId'] = contactId
templateCTR['InitialContactId'] = contactId
templateCTR['Attributes'] = addIvrAttributes()
if (random.randint(1, 100) > 75):
templateCTR['Queue'] = addQueue(accountId, region)
if (random.randint(1, 100) > 25):
templateCTR['Agent'] = addAgent(accountId, region)
templateCTR['DisconnectReason'] = setDisconnectReason(
templateCTR['Queue'] is not None,
templateCTR['Agent'] is not None
)
templateCTR = setCustomerJourneyTS(templateCTR, year, month, day)
strCTR = json.dumps(templateCTR)
json.loads(strCTR) #verify that there are no parsing errors
return strCTR