嗨。 我想使用 php 发送 Whatsapp 消息。我运行这段代码
<?php
require_once 'Chat-API-master/src/whatsprot.class.php';
$username = "6285648145xxx";
$nickname = "ardi";
$password = "password"; // The one we got registering the number
$debug = true;
// Create a instance of WhastPort.
$w = new WhatsProt($username, $nickname, $debug);
$w->connect(); // Connect to WhatsApp network
$w->loginWithPassword($password); // logging in with the password we got!
$target = '62811304xxxx'; // The number of the person you are sending the message
$message = 'Hi! :) this is a test message';
$w->sendMessage($target , $message);
?>
但是我在浏览器中得到了这段代码
tx <stream:features></stream:features>
tx <auth user="6285648145xxx" mechanism="WAUTH-2"></auth>
rx <from s.whatsapp.net=""></from>
rx <stream:features></stream:features>
rx <challenge>376a507c7e915642d85255fe96cb1d101fa23819</challenge>
tx <response>200e09fa50b7c6a3fa3416878f1e165e8d7670f054ddeaa1c77278a5f8e5b881f4f9f75dce809f42cbdcf17931db8c15641399488b90e9cb74e87de94560802f98bb028af9b5967403fb278c28e06c</response>
Fatal error: Maximum execution time of 30 seconds exceeded in D:\XAMPP\htdocs\waonline\Chat-API-master\src\whatsprot.class.php on line 2609
怎么了?请给我解决方案。谢谢
第一种可能的方法是通过 URL 过程将用户发送到:
https://api.whatsapp.com/send?phone=XXYYYYYYYY
(其中
XX
是国家/地区代码,YYYYYYYY
是号码)
现在 API 的格式更短,并且允许包含文本消息。
https://wa.me/XXYYYYYYYY/?text=urlencodedtext
(其中
URL-encodedtext
是 URL 编码的预填充消息)
也可以只指定要发送的消息,但不指定用户,让用户稍后选择发送给谁,可以使用此方法一次将其发送给许多人:
https://wa.me/?text=urlencodedtext
您可以在这里看到所有官方当前信息 https://faq.whatsapp.com/en/android/26000030/
添加
set_time_limit(120);
您的脚本执行时间太长
官方文档说要使用他们的 wa.me URL,所以我们来看看:http://wa.me/?text=mytest。你看到了什么?您看到错误页面了吗?这是我看到的:
我们找不到您要找的页面
您正在寻找的页面似乎不存在。或者我们可能刚刚删除的页面。无论哪种方式,请返回或务必检查网址、拼写并重试。
所以,简而言之,不要使用 wa.me URL。使用
api.whatsapp.com
URL,例如以下之一:
https://api.whatsapp.com/send?text=YourShareTextHere
https://api.whatsapp.com/send?text=YourShareTextHere&phone=123
这两个都非常适合我!
如果您有兴趣观看跟踪这些 URL 的项目,请查看我们!:https://github.com/bradvin/social-share-urls#whatsapp