Last active
December 8, 2023 05:44
-
-
Save antonraharja/849d417f6e06cc6c90bc680f2e73b20d to your computer and use it in GitHub Desktop.
Generate test SMS
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Copy this file to playSMS web path and run from shell | |
*/ | |
include 'init.php'; | |
include $core_config['apps_path']['libs'] . '/function.php'; | |
ob_end_clean(); | |
$sender_username = 'user1'; // make sure user1 is exists | |
$from = '1234'; // can be any sender ID | |
$to = []; // this will be filled below, default is to 1k numbers | |
$messages = []; // this also will be filled below, default is for 10 type of SMS message | |
// send to 1k numbers | |
// make sure to setup route for 1555 to use gateway dev | |
for ($i = 0; $i < 1000; $i++) { | |
$to[] = 15553000001 + $i; | |
} | |
// send 10 types of SMS message to each 1k numbers above | |
for ($i = 0; $i < 100; $i++) { | |
$messages[] = 'With $' . ($i + 1) . ' you can buy item #' . str_shuffle(uniqid()) . ' for a discount!'; | |
} | |
// LETS START | |
$total_duration = 0; | |
$start = time(); | |
$i = 0; | |
foreach ( $messages as $message ) { | |
$i++; | |
echo '#' . $i . '. c:' . count($to) . ' m:' . $message . PHP_EOL; | |
$time_start = time(); | |
echo " Start: " . date('Y-m-d H:i:s', $time_start) . PHP_EOL; | |
list($status, $sms_to, $smslog_id, $queue, $counts, $error_strings) = sendsms($sender_username, $to, $message, 'text', 0, '', true, '', $from, ''); | |
$time_stop = time(); | |
echo " Stop: " . date('Y-m-d H:i:s', $time_stop) . PHP_EOL; | |
$duration = $time_stop - $time_start; | |
echo " Duration: " . date('i:s', $duration) . PHP_EOL; | |
$total_duration += $duration; | |
} | |
$stop = time(); | |
// DONE, NOW COUNTING TIME | |
echo PHP_EOL; | |
echo "First start: " . date('H:i:s', $start) . PHP_EOL; | |
echo "Last stop: " . date('H:i:s', $stop) . PHP_EOL; | |
echo "Total SMS: " . count($to) * count($messages) . PHP_EOL; | |
if ($total_duration > 3600) { | |
$total_duration_formatted = gmdate('H:i:s', $total_duration); | |
} else { | |
$total_duration_formatted = gmdate('i:s', $total_duration); | |
} | |
echo "Total duration: " . $total_duration_formatted . PHP_EOL; | |
// ALL DONE |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment