Pesan dari situs dalam VK - sederhana dan efektif - PHP + CUrl

Pengiriman pesan ke VK nyaman untuk sebagian besar situs dari arah yang berbeda: banyak orang tidak membaca email, semuanya rumit dalam pesan instan seperti Votsap dan Viber. Dan buletin dan pemberitahuan pribadi dari situs di VK - yang paling - mudah, sederhana dan langsung terlihat oleh pengguna.

Untuk layanan saya untuk pemberitahuan pengumuman baru, saya harus cepat dan gratis mengirimkan pemberitahuan pengumuman baru kepada pengguna. Saluran dasar - email - tidak nyaman. Saluran bagus lainnya - pembawa pesan Telegram - memutuskan untuk memperjuangkan privasi dan menjadi tidak dapat diandalkan. Oleh karena itu, saya harus menambahkan alternatif dalam bentuk VK (terutama karena layanan masih tahu cara melacak grup di VK untuk tampilan entri dan komentar baru). Saya terkejut dengan kesederhanaan dan perhatian pengaturan, bahkan Telegram tidak ada di dekatnya.

1. Hubungkan widget "Izinkan menulis ke komunitas"

Widget terlihat seperti tombol. Saya telah menyematkan tombol pada pengaturan akun pengguna layanan.

gambar

Dalam teks Anda harus mengganti 74449217 dengan id grup Anda. Juga pertimbangkan di mana userId VKontakte yang diterima akan disimpan. Dalam kode di bawah ini, ditugaskan ke bidang vk_id, dan kemudian disimpan bersama dengan pengaturan lain.

<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> 

Dokumentasi widget .

Kami telah memperoleh izin dari pengguna, sekarang kami akan mengatur pengiriman pesan.

2. Mengirim pesan

Di pengaturan komunitas Anda, aktifkan pesan komunitas.

gambar

Kami menghasilkan token komunitas kami.

gambar

Secara umum, semuanya sudah siap. Untuk mengirim pesan, gunakan PHP + CUrl. Dalam fungsi kirim, sebagai parameter input, kami mentransfer id pengguna dan teks pesan VK yang sebelumnya diterima. Fungsi ini juga menggunakan konstanta vk_token, token komunitas.

 //   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; } 

Bersama mempelajari kemungkinan dan materi, saya menghabiskan satu hari mengatur pengiriman pemberitahuan ke VC - Saya pikir ini adalah salah satu opsi termudah untuk berkomunikasi dengan pengguna.

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


All Articles