Search code examples
smstwiliotwilio-phptwilio-api

SMS Twilio API errors in command line but no errors in the browser but not sending messages


I had twilio working for some time now, but I wanted to make some changes and save the numbers that are coming with sending errors in a database to avoid sending them again, and somehow, Twilio stopped working. I used it from the browser which shows no errors, but I got these errors when I tried to run the script file from the command line.

Any help is appreciated.

PHP Notice:  Use of undefined constant CURLOPT_URL - assumed 'CURLOPT_URL' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 80
PHP Notice:  Use of undefined constant CURLOPT_HEADER - assumed 'CURLOPT_HEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 81
PHP Notice:  Use of undefined constant CURLOPT_RETURNTRANSFER - assumed 'CURLOPT_RETURNTRANSFER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 82
PHP Notice:  Use of undefined constant CURLOPT_INFILESIZE - assumed 'CURLOPT_INFILESIZE' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 83
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 84
PHP Notice:  Use of undefined constant CURLOPT_TIMEOUT - assumed 'CURLOPT_TIMEOUT' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 85
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 89
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 89
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 89
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 89
PHP Notice:  Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 93
PHP Notice:  Use of undefined constant CURLOPT_POST - assumed 'CURLOPT_POST' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 106
PHP Notice:  Use of undefined constant CURLOPT_POSTFIELDS - assumed 'CURLOPT_POSTFIELDS' in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 107
PHP Fatal error:  Call to undefined function Twilio\Http\curl_init() in /var/www/twilio/twilio-php-master/Twilio/Http/CurlClient.php on line 24


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Send SMS from parsed file</title>
</head>
<body>
<?php
ini_set("max_execution_time", 0);
$lines=array();
$fp=fopen('twilio_ready.csv', 'r');
while (!feof($fp)) {
    $line=fgets($fp);
    //Add +1 to the number
    $line='+1'.$line;
    //add to array
    $lines[]=$line;
}
fclose($fp);
unset($lines[count($lines)-1]);
$people =  array_flip($lines);

require_once __DIR__ . '/../twilio-php-master/Twilio/autoload.php'; // Loads the library
use Twilio\Twiml;
$servername = "localhost";
$username = "root";
$password = "lcrl62pk";
$dbname = "twilio";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);


use Twilio\Rest\Client;


    $AccountSid = "Something here";
    $AuthToken = "something here";

    // Step 3: instantiate a new Twilio Rest Client
    $client = new Client($AccountSid, $AuthToken);

    foreach ($people as $number => $name) {
                try {
                        $sms = $client->account->messages->create(

                                // the number we are sending to - Any phone number
                                $number,

                                array(
                                        // Step 6: Change the 'From' number below to be a valid Twilio number
                                        // that you've purchased
                                        'from' => "+1844444444",

                                        // the sms body
                                        'body' => "hey there"
                                )
                        );

                        // Display a confirmation message on the screen
                        echo "<font color='green'>Sent message to $name at phone number: $number.</font>"."<br />";
                } catch (Exception $e) {
                        echo "<font color='red'>Couldn't send message to $name at phone number: $number.</font>"."<br />";
                        //add them to black list database!
                }
    }



$conn->close();
print 'DONE!';
?>
</body>
</html>

Solution

  • sudo apt-get install php5-curl

    restart the server:

    sudo service apache2 restart