Skip to content

Commit 7190805

Browse files
upgrade twilio lookup to v2
1 parent 6407b60 commit 7190805

File tree

1 file changed

+14
-12
lines changed
  • src/extensions/service-vendors/twilio

1 file changed

+14
-12
lines changed

src/extensions/service-vendors/twilio/index.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -633,44 +633,46 @@ export async function getContactInfo({
633633
return {};
634634
}
635635
const twilio = await exports.getTwilio(organization);
636-
const types = ["carrier"];
636+
const types = { fields: "line_type_intelligence" };
637637
if (lookupName) {
638638
// caller-name is more expensive
639-
types.push("caller-name");
639+
types.fields = ("line_type_intelligence,caller-name");
640640
}
641641
const contactInfo = {
642642
contact_number: contactNumber,
643643
organization_id: organization.id,
644644
service: "twilio"
645645
};
646646
try {
647-
const phoneNumber = await twilio.lookups.v1
647+
const phoneNumber = await twilio.lookups.v2
648648
.phoneNumbers(contactNumber)
649-
.fetch({ type: types });
649+
.fetch(types);
650650

651-
if (phoneNumber.carrier) {
652-
contactInfo.carrier = phoneNumber.carrier.name;
651+
if (phoneNumber.lineTypeIntelligence.carrier_name) {
652+
contactInfo.carrier = phoneNumber.lineTypeIntelligence.carrier_name;
653653
}
654-
if (phoneNumber.carrier.error_code) {
654+
if (phoneNumber.lineTypeIntelligence.error_code) {
655655
// e.g. 60600: Unprovisioned or Out of Coverage
656656
contactInfo.status_code = -2;
657-
contactInfo.last_error_code = phoneNumber.carrier.error_code;
657+
contactInfo.last_error_code = phoneNumber.lineTypeIntelligence.error_code;
658658
} else if (
659-
phoneNumber.carrier.type &&
660-
phoneNumber.carrier.type === "landline"
659+
// mobile or landline
660+
phoneNumber.lineTypeIntelligence.type &&
661+
phoneNumber.lineTypeIntelligence.type === "landline"
661662
) {
662663
// landline (not mobile or voip)
663664
contactInfo.status_code = -1;
664665
} else if (
666+
// example: US
665667
phoneNumber.countryCode &&
666668
getConfig("PHONE_NUMBER_COUNTRY", organization) &&
667669
getConfig("PHONE_NUMBER_COUNTRY", organization) !==
668670
phoneNumber.countryCode
669671
) {
670672
contactInfo.status_code = -3; // wrong country
671673
} else if (
672-
phoneNumber.carrier.type &&
673-
phoneNumber.carrier.type !== "landline"
674+
phoneNumber.lineTypeIntelligence.type &&
675+
phoneNumber.lineTypeIntelligence.type !== "landline"
674676
) {
675677
// mobile, voip
676678
contactInfo.status_code = 1;

0 commit comments

Comments
 (0)