11import * as dynamoDbLib from "../common/dynamodb-lib" ;
22import { success , failure } from "../common/response-lib" ;
3- const client = require ( 'twilio' ) ( process . env . authToken , process . env . authToken ) ;
3+ const client = require ( 'twilio' ) ( process . env . accountSid , process . env . authToken ) ;
44import SSM from "aws-sdk/clients/ssm" ;
55const ssm = new SSM ( ) ;
66
@@ -9,17 +9,15 @@ export default async function main(event, context) {
99 const data = JSON . parse ( event . body ) ;
1010 console . log ( data ) ;
1111
12- const placeId = event . pathParameters . place_id ;
12+ const placeId = data . place_id ;
1313 const stage = process . env . stage ;
1414
1515 var number ;
1616 if ( stage == 'dev' ) {
1717 number = '+123456789' ;
1818 } else {
19- var twilioNumberResource ;
20-
21- try {
22- twilioNumberResource = await client . availablePhoneNumbers ( 'US' ) . local
19+ const url = await ssm . getParameter ( `/api/execute-url/${ scope . stage } ` ) . promise ( ) ;
20+ number = await client . availablePhoneNumbers ( 'US' ) . local
2321 . list ( {
2422 // nearLatLong: '37.840699, -122.461853',
2523 // distance: 50,
@@ -28,31 +26,22 @@ export default async function main(event, context) {
2826 // inRegion: 'CA',
2927 limit : 1
3028 } )
31- . then ( local => local [ 0 ] )
29+ . then ( local => {
30+ var resource = local [ 0 ] ;
31+
32+ const webhook = url + process . env . path ;
33+ //provision phone number
34+ return client . incomingPhoneNumbers . create ( {
35+ phoneNumber : resource . phoneNumber ,
36+ friendlyName : placeId ,
37+ smsUrl : webhook
38+ } ) ;
39+ } ) . then ( p => p . phoneNumber )
3240 . catch ( ( err ) => {
3341 //error occured, return error to caller
3442 console . log ( err ) ;
3543 return failure ( { status : false , error : err } ) ;
3644 } ) ;
37- } catch ( error ) {
38- console . log ( error ) ;
39- return failure ( { status : false , error} ) ;
40- }
41-
42- const url = await ssm . getParameter ( `/api/execute-url/${ scope . stage } ` ) . promise ( ) ;
43- const webhook = url + process . env . path ;
44- //provision phone number
45- number = await client . incomingPhoneNumbers . create ( {
46- phoneNumber : twilioNumberResource . phoneNumber ,
47- friendlyName : placeId ,
48- smsUrl : webhook
49- } )
50- . then ( p => p . phoneNumber )
51- . catch ( ( err ) => {
52- //error occured, return error to caller
53- console . log ( err ) ;
54- return failure ( { status : false , error : err } ) ;
55- } ) ;
5645 }
5746
5847 try {
0 commit comments