Documentation for Developer/Administrators
HomeAccount PortalPricing
  • About this Documentation
  • Overview
    • Table of Content
    • Introduction
    • Welcome Kit
      • Add Balance
      • Buy New Phone Number
      • Voice configuration
      • SMS Configuration
        • SMS Forwarding
      • Reporting
        • CDR
        • SMS
        • FAX
  • DIDforSale Portal
    • Register a new account
    • Dashboard
    • Reporting
      • CDR
      • SMS
      • Inbound Calls
      • FAX
      • Group Usage
      • Voicemails
    • Phone Numbers
      • Phone Numbers
      • Channels
      • E911
      • Porting
      • Send FAX
      • FAX Emails
      • SMS Groups
      • Groups
      • CNAM
    • Interconnection
      • Manage IP
      • SIP Accounts
      • Testing Center
      • Phones and Devices
      • Custom Dialplan
      • Audio Files
    • Tools/Settings
      • Outbound Rates
      • API Control
      • Fraud Control
      • Postcalls
    • Account
      • Profile
      • Change Password
      • Add Balance
      • Payment History
      • Voucher
      • Invoices
      • Auto Refill
      • Charges
      • Contact Us
      • Global Settings
      • Logout
  • SIP Trunking
    • Configuration of Phone Numbers
      • Configuring SIP to IP Account
      • Configuring Custom Dial Plan to a Phone Number
      • Configure SIP to SIP Account
      • Set up Call Forwarding to a Phone Number
      • http URL Forwarding Setup
      • Webhook Setup
      • FAX
        • Receive FAX
        • Fax through SIP Account
        • Send FAX
    • Adding IP Address
    • Creating SIP Account
      • VoiceMails
    • SIP Trunk Interconnection Guide
      • 3CX
        • SIP-based Configuration
        • IP-based Configuration
      • Allworx
      • Asterisk
      • CISCO UCM
      • FreePBX
        • FreePBX PJSIP Configuration
          • IP-based
          • SIP-based
        • FreePBX ChanSIP Configuration
          • IP based
          • SIP based
      • FreeSwitch
      • FusionPBX
      • GoAutoDial
      • Grandstream Devices
        • GrandStream 6102 IPPBX
        • GrandStream 502
        • Grandstream 6104 IPPBX
      • HoduSoft PBX System
      • Microsoft Skype for Business
      • NEC Corporation
      • PBXinaFlash
      • Polycom OBi300
      • ShoreTel PBX
      • Vital PBX
      • Yealink Phones
      • ZYCOO
    • DIDForSale Softphone
    • Zoiper Softphone Application
      • Iphone App
    • Grandstream Wave Mobile Application
    • Enable Call Recording
    • Call Transcription
  • Voice and SMS APIs
    • Getting the API key and Token
    • Voice
      • Big Picture
      • Quick Start
        • Identify Caller
        • Collect Response
      • didML Reference Doc
        • Voice API Request Params
        • Voice API Response
      • didML Verbs
        • <dial>
          • <client>
          • <conference>
          • <number>
          • <queue>
          • <sip>
        • <enqueue>
        • <fax>
        • <gather>
        • <hangup>
        • <pause>
        • <play>
        • <postcall>
        • <record>
        • <recordcall>
        • <redirect>
        • <reject>
        • <say>
        • <sms>
    • SMS
      • Configure SMS
      • Send/Receive SMS via Email
      • SMS Forwarding
        • SMS forwarding to Phone Number
        • SMS forwarding to Email
        • SMS forwarding to a Webhook
      • SMS/MMS Desktop Application
      • SMS APIs
        • Activate SMS
        • Deactivate SMS API
        • Send SMS
        • SMS CDR
        • Set SMS Forwarding
      • Bulk SMS Feature
        • Creating SMS Campaign
        • Custom or Dynamic Text Sms
  • UC Editor
    • UC Editor
      • Features
      • How to configure/setup the Custom Call Flow
  • FAX via Email
    • Send & Receive FAX via Email
Powered by GitBook
On this page

Was this helpful?

  1. Voice and SMS APIs
  2. Voice
  3. Quick Start

Identify Caller

For every call, we send lots of information about the caller, example caller ID, Caller name, Number dialed etc. Let's use some of that information.

Identify Caller by Name

Now that you have successfully written your first Voice API, we will modify the code to make is more personalized we will include caller name in greeting.

For example: “Hello Bob”

<?php
 
       // contacts array will List everyone your contacts
            $contacts = array(    
              "9495797676"=>"John",
              "9495776878"=>"Lily",
              "3102168544"=>"Bob",
              "8587771234"=>"Wendy"
              "6058393817"=>"Amanda"
              );
        // if the caller is known, then greet them by name
        // otherwise, just identify them as another caller
        if(!$name = $contacts[$_REQUEST['From']])
                $name = "there";
 
        // now greet the caller
        header("content-type: text/xml");
        echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<Response>
        <Say>Hello <?php echo $name ?>.</Say>
</Response>

In the code above we started off by creating an array $contact. In this array we have listed all the known contacts with their phone number and name. When the call comes in from parameter will be triggered and look in the $contact array to see if we have the phone number in our contacts. If the phone number is located in the contacts then the code will greet the caller with name (like Hello Bob) else it will treat the caller unknown and respond “Hello There”.

Key word used = Say Say Reads the text and convert’s that to audio and play to the caller.

Wohooo!!!! You successfully completed the step and identified your caller by name!!!

Sounds good, now let's. Let's collect users response and so you can transfer call to the right person.

PreviousQuick StartNextCollect Response

Last updated 6 years ago

Was this helpful?