Ok so this is a strange one. SMS has been working for years on our site without issue however it isn't used very frequently so I'm not quite sure when it 'broke'
Bit of background: Using 4.7.22 on Wordpress 4.8, PHP 5.5.9-1ubuntu4.4 and clickatell (org.civicrm.sms.clickatell) version 3.0.
I can successfully send a single SMS if I go into a contact and select 'Outbound SMS' from the 'Actions' menu. If I add another contact to the list, I get the error:
One of parameters (value: "Administrator) is not of the type Positive
(PS, the username is Administrator)
If I try to send a single SMS from the 'Contacts' menu, 'Send SMS' and just try a single contact I get the same error:
Sorry but we are not able to provide this at the moment. One of parameters (value: "Administrator) is not of the type Positive
Here is some more debug info:
tent/plugins/civicrm/civicrm/CRM/Core/Error.php(374): CRM_Core_Error::backtrace() #1 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Utils/Type.php(476): CRM_Core_Error::fatal("One of parameters (value: "Administrator) is not of the type Positive") #2 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Utils/Type.php(187): CRM_Utils_Type::validate("\"Administrator", "Positive", TRUE) #3 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Query.php(3608): CRM_Utils_Type::validateAll((Array:2), "Positive") #4 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Query.php(2022): CRM_Contact_BAO_Query->includeContactIDs() #5 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Query.php(519): CRM_Contact_BAO_Query->whereClause(NULL) #6 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Query.php(479): CRM_Contact_BAO_Query->initialize(NULL) #7 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/BAO/Query.php(4435): CRM_Contact_BAO_Query->__construct((Array:2), (Array:5), NULL, TRUE, FALSE, 1, TRUE, TRUE, TRUE, NULL, "AND", NULL) #8 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Utils/Token.php(1240): CRM_Contact_BAO_Query::apiQuery((Array:2), (Array:5), NULL, NULL, 0, 2) #9 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/Form/Task/SMSCommon.php(188): CRM_Utils_Token::getTokenDetails((Array:2), (Array:5), FALSE, FALSE) #10 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Contact/Form/Task/SMS.php(79): CRM_Contact_Form_Task_SMSCommon::buildQuickForm(Object(CRM_Contact_Form_Task_SMS)) #11 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(564): CRM_Contact_Form_Task_SMS->buildQuickForm() #12 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Upload.php(129): CRM_Core_Form->buildForm() #13 /var/www/html/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Upload->perform(Object(CRM_Contact_Form_Task_SMS), "upload") #14 /var/www/html/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Contact_Form_Task_SMS), "upload") #15 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(351): HTML_QuickForm_Page->handle("upload") #16 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Utils/Wrapper.php(113): CRM_Core_Controller->run() #17 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(284): CRM_Utils_Wrapper->run("CRM_Contact_Form_Task_SMS", "Activities", (Array:1)) #18 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(84): CRM_Core_Invoke::runItem((Array:14)) #19 /var/www/html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:4)) #20 /var/www/html/wp-content/plugins/civicrm/civicrm.php(1227): CRM_Core_Invoke::invoke((Array:4)) #21 [internal function](): CiviCRM_For_WordPress->invoke("") #22 /var/www/html/wp-includes/class-wp-hook.php(298): call_user_func_array((Array:2), (Array:1)) #23 /var/www/html/wp-includes/class-wp-hook.php(323): WP_Hook->apply_filters("", (Array:1)) #24 /var/www/html/wp-includes/plugin.php(453): WP_Hook->do_action((Array:1)) #25 /var/www/html/wp-admin/admin.php(222): do_action("toplevel_page_CiviCRM")
Because I CAN get it successfully send a single SMS, I know Clickatel is working and I've tried setting up a new provider with bogus credentials and get the same error. I also know I had this same issue using 4.7.19 and the Clickatell version 2.5 API which is the reason I updated CiviCRM and the API.
I'm really hoping somebody can point me in the right direction where to look to get this fixed. I know bulk SMS were working and have no idea what caused he breakage.