An example should be like this
add_filter('wp_sms_single_dispatch_arguments', function ($arguments) {
// Retrieve the subscriber by mobile number
$subscriber = \WP_SMS\Newsletter::getSubscriberByMobile($arguments['to']);
// Retrieve the user by phone number
$user = \WP_SMS\Helper::getUserByPhoneNumber($arguments['to']);
// If the subscriber exists, replace {display_name} with the subscriber's name
if ($subscriber) {
$arguments['msg'] = str_replace('{display_name}', $subscriber->name, $arguments['msg']);
}
// If the user exists, replace {display_name} with the user's display name
elseif ($user) {
$arguments['msg'] = str_replace('{display_name}', $user->display_name, $arguments['msg']);
}
// Return the modified arguments
return $arguments;
});
Please consider the Delivery Method in the settings should be set on “Batch SMS Queue“
Best