رسائل من موقع في VK - بسيطة وفعالة - PHP + CUrl

تسليم الرسائل إلى VK مناسب لمعظم المواقع ذات الاتجاهات المختلفة: كثير من الناس لا يقرؤون رسائل البريد الإلكتروني ، كل شيء معقد في المراسلات الفورية مثل Votsap و Viber. والنشرة الإخبارية والإشعارات الشخصية من الموقع في VK - الأكثر - سهلة وبسيطة ومرئية على الفور للمستخدم.

بالنسبة لخدمتي الخاصة بالإشعارات الخاصة بالإعلانات الجديدة ، أحتاج إلى تقديم إعلامات بالإعلانات الجديدة للمستخدمين بسرعة وبشكل مجاني. القناة الأساسية - البريد الإلكتروني - ليست مريحة. قناة أخرى جيدة - مراسلة Telegram - قررت القتال من أجل الخصوصية وأصبحت غير موثوقة. لذلك ، اضطررت إلى إضافة بديل في شكل VK (خاصة وأن الخدمة لا تزال تعرف كيفية تتبع المجموعات في VK لظهور إدخالات وتعليقات جديدة). لقد فوجئت بسعادة وبساطة الإعدادات ، حتى Telegram لم يكن قريبًا.

1. قم بتوصيل عنصر واجهة المستخدم "السماح للكتابة للمجتمع"

القطعة تبدو وكأنها زر. لقد قمت بتضمين الزر في إعدادات حساب المستخدم للخدمة.

الصورة

تحتاج في النص إلى استبدال الرقم 74449217 بمعرّف مجموعتك. ضع في اعتبارك أيضًا مكان حفظ معرّف المستخدم المستلم فكونتاكتي. في الرمز أدناه ، يتم تعيينه إلى حقل vk_id ، ثم يتم حفظه مع الإعدادات الأخرى.

<script type='text/javascript' src='https://vk.com/js/api/openapi.js?154'></script> <div id='vk_send_message'></div> <script type='text/javascript'> VK.Widgets.AllowMessagesFromCommunity('vk_send_message', {height: 30},74449217); VK.Observer.subscribe('widgets.allowMessagesFromCommunity.allowed', function f(userId) { console.log(userId); console.log('allowed'); document.getElementById('vk_id').value=userId; }); VK.Observer.subscribe('widgets.allowMessagesFromCommunity.denied', function f(userId) { console.log(userId); console.log('denied'); document.getElementById('vk_id').value=''; }); </script> 

وثائق القطعة .

لقد حصلنا على إذن من المستخدم ، الآن سننظم إرسال الرسائل.

2. إرسال الرسائل

في إعدادات المجتمع الخاصة بك ، قم بتمكين رسائل المجتمع.

الصورة

نقوم بإنشاء رمز مميز لمجتمعنا.

الصورة

بشكل عام ، كل شيء جاهز. لإرسال رسالة ، استخدم PHP + CUrl. في وظيفة الإرسال ، كمعلمات إدخال ، نقوم بنقل معرف مستخدم VK ونص الرسالة المستلمين سابقًا. تستخدم الدالة أيضًا الثوابت vk_token ، رمز المجتمع.

 //   vk function send_vk($vk_id, $text_source) { $url="https://api.vk.com/method/messages.send?user_id=$vk_id&v=5.76&access_token=".vk_token; $text=rawurlencode($text_source); $ch = curl_init($url); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_POSTFIELDS, "&message=".$text); $hh=curl_exec($ch); //    if (!strpos(" ".$hh,'{"response":')) { //    ,   if (!strpos(" ".$hh,'error')) {$hh=curl_exec($ch);} } $html=$hh; curl_close($ch); return $html; } 

جنبًا إلى جنب مع دراسة الاحتمالات والمواد ، قضيت يومًا واحدًا في تنظيم إرسال الإشعارات إلى VC - أعتقد أن هذا هو أحد أسهل الخيارات للتواصل مع المستخدم.

Source: https://habr.com/ru/post/ar416001/


All Articles