4

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.

Thanks HEAPS!!

2
  • The bug seems to be happening in token substition code. Does the SMS you're sending contain tokens? Does the problem happen without tokens? Oct 21, 2017 at 19:22
  • Also, I believe there's a version 4.0 of the Clickatell extension now. Oct 21, 2017 at 19:23

2 Answers 2

0

Just a longshot...:

Mass SMS is originally built on the same code as mass email.

Have you done any changes for mass email? If you give access permission for administrator mass email, it could mysteriously work...

Good luck!

1
  • I had the same problem and I'm logged in as WP admin. How to add specific permission for mass email? Oct 9, 2017 at 12:19
0

The Clickatell extension was broken for some time. It has been updated since I last attempted to use it, but many people have switched to Twilio. Contact Veda Consulting if you want it fixed - they didn't respond to the bug I reported but I guess you could try: https://github.com/veda-consulting/org.civicrm.sms.clickatell/issues

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.