Example.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace app\admin\controller\vbot;
  3. use think\Hook;
  4. /**
  5. * 微信机器人调用例子
  6. */
  7. class Example
  8. {
  9. /*使用模板发送消息*/
  10. public function example1()
  11. {
  12. $template_id = 1;//模板ID
  13. Hook::listen('vbot_send_msg', $template_id);
  14. // 方法二,listen方法的第4个参数设置为true,则返回值为一维数组
  15. /*$res = Hook::listen('vbot_send_msg',$template_id,[],true);
  16. if ($res['errcode'] != 0) {
  17. echo $res['errmsg'];
  18. }*/
  19. }
  20. /*
  21. * 先实例化,再调用模板发送消息
  22. * 此方式,可以传递第三个参数:模板变量键值对
  23. * 若模板变量已预先定义,则会自动获取值,无需在此传递,若有传递,则会覆盖预定义的模板变量
  24. * 若模板变量没有在后台预先定义,则会从您传递的参数三中查找
  25. */
  26. public function example3()
  27. {
  28. $template_id = 'test_tpl';// 模板ID或Code
  29. $vbot = new \addons\vbot\Vbot();
  30. $vbot->vbotSendMsg($template_id, [], [
  31. 'dynamic_variable' => '赋值成功~'
  32. ]);
  33. }
  34. public function run()
  35. {
  36. return 'run';
  37. }
  38. /*此方法用于演示:模板变量的值设置为方法的情况*/
  39. public function test($params)
  40. {
  41. return '我是 Example 下面的 test 方法 -> ' . $params;
  42. }
  43. /*
  44. * 若您发现模板不能满足您的需求,可以模板为基础,再随时自定义消息的数据
  45. * 通常在通知中的数据变化多端时使用
  46. * 必须设置模板ID或Code,首先会调用模板内的所有数据,自定义数据再覆盖到模板数据上
  47. * 以下字段根据消息类型不同,需要的字段也不尽相同,详见注释
  48. */
  49. public function example2()
  50. {
  51. $template_id = 1;//模板ID
  52. // 覆盖数据,所有字段均为可选,不填则取模板的数据
  53. Hook::listen('vbot_send_msg', $template_id, [
  54. 'robot_ids' => '发送机器人',// 将机器人ID以小写逗号分隔格式如:1,2
  55. 'content' => '自定义消息内容',// 文本、markdown、图文 拥有此属性
  56. 'picurl_image' => '',// 自定义图片URL,只图片拥有此属性
  57. 'news' => [
  58. 'title' => '自定义链接标题',
  59. 'url' => '自定义链接URL',
  60. 'picurl' => '自定义链接图片URL'
  61. ],// 自定义图文组,图文类型的消息,拥有此属性
  62. 'at_mobiles' => '1388888888',// 要at的人的手机号,','号分隔,只文本拥有此属性
  63. 'is_atall' => 1,// 是否at所有人,只文本拥有此属性
  64. ]);
  65. }
  66. }