Про Whatsapp contact form 7 integration

Ваш отзыв

whatsapp

Наконец-то удалось подружить WordPress и Whatsapp contact form 7 integration.

Проблемы было три:

1) сначала просто не отсылались сообщения в WhatsApp

2) потом не отсылались сообщения в WhatsApp при том, что «залогиниваться» удавалось

3) Форма Contact form 7 повисала после каждого отправленного сообщения

Наконец, после долгих мытарств было найдено решение.

Первая проблема решилась достаточно быстро.

Необходимо не забывать, что WhatApp старым клиентам залогиниваться не дает, пишет в файл debug.log WordPress’a, что «Login Failed». Это решается небольшой корректировкой файла ./whatsapp/whatsprot.class.php.
В начале реализации класса WhatsProt есть строки с константами. Меняем в паре констант значения на свои:

Итак, данная ошибка перестала появляться, но сообщение все также не посылались…

В исходном коде файла whatsapp- contact-form-7 -send.php можно найти такие строки:

Так вот в моем случае функции connect(), loginWithPassword(…) и sendMessage(…) не возвращали true никогда.
В принудительном порядке данные функции в случае успешного выполнения своих действий стали возвращать нужное мне значение 🙂 .

Первое сообщение было получено!

Но под формой Contact Form 7 не появлялось сообщения об успешной доставке сообщения, под формой продолжала крутиться стрелочка… 🙁

Во-первых, в debug.log была найдена строка, говорящая о том, что прав на запись в некий файл nextChallenge.dat нет. Создаем такой файлик в корне нашего WordPress’a и даем ему права для чтения/записи веб-серверу, например, пользователю и группе www-data. Во-вторых, мне потребовалось подкорректировать файл ./whatsapp/ whatsprot.class .php, слегка поменяв поведение некоторых функций.

Для начала находим функцию doLogin().
Меняем в ней строки

на

Если WhatsApp не мог залогиниться, и вылетал приведенный в коде Exception, то форма повисала. Хотя можно было все это обойти другим способом, например, try-catch, но для примера сделано именно так.

Затем находим места вызова функции debugPrint(…) и комментируем их, как на примере

При попадании на эту функцию в форму Contact Form 7 также не возвращалось управление.

После исправления этих нюансов и сообщения в WhatsApp начали сыпаться, и Contact Form 7 не висла 🙂


Оставьте комментарий

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> <img src="" alt="" class="" width="" height="">

http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ab.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ac.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ag.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ah.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ai.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ak.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/am.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/an.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ao.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aq.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ar.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/at.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/av.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aw.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ay.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/az.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bb.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bc.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bd.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/be.gif 
больше...