创建一个 link 将打开 Viber 和 WhatsApp 并向我发送消息
Create a link that will open Viber and WhatsApp and will send a message to me
身边的人都习惯用IM。在我的网站上,我需要放置一个 link 来打开给定的即时消息应用程序(在 PC 和移动设备上)并打开向我的号码发送消息 - 但我找不到方法!
我想使用一些 URL 方案来做到这一点,但我只能找到(__number 是我的手机 phone 号码):
<a href="intent://send/__number__#Intent;scheme=smsto;package=com.whatsapp;action=android.intent.action.SENDTO;end">WhatsApp</a>
和
<a href="viber://add?number=__number__">Viber</a>
(我什至不知道我应该在+1202...中使用phone还是简单的1202...(即如果需要加号)
但坦率地说,这是行不通的。 Viber 打开它的 window 然后告诉我它不会处理那个请求,并且 WhatsApp 根本没有 linked 到 intent
方案(在几个设备和操作系统上测试)。
所以,我请你帮我解决这个小问题:什么样的 URL 会打开 Viber 和 WhatsApp 应用程序让网站的访问者与我联系?
你需要的是deep-linking,viber
和whatsapp
的一些例子是:
Viber:
<a href="viber://pa?chatURI=[public account URI]&text=[message text]"> some text </a>
WhatsApp:
<a href="whatsapp://send?abid=[users name]&text=[message text]"> some text </a>
虽然不深 link,但您也可以使用以下 url(不要在 phone 上使用 +
)用于 WhatsApp :
<a href="https://api.whatsapp.com/send?phone=0000000">Contact Me</a>
来源:
http://origamiengine.com/deep-linking
https://support.viber.com/customer/en/portal/articles/2872423-deep-links
既然你不想创建一个 public 帐户(又名 viber links 包括 /pa?)那么简单地添加 link:<a href="viber://chat?number=012345678901"">chat with me</a>
前两位是国家代码,不需要+号。
对于 WhatsUp,您可以使用此 link,这将在移动设备上打开与您的聊天,只需输入您的 phone,不带 + 号。
<a href="https://api.whatsapp.com/send?phone=123456789">WhatsUp</a>
whatsapp 很容易。
使用以下格式
**https://wa.me/123456/**
就是这样。这里 123456 表示您的 whatsapp 号码和国家代码。
不要包含 + 或前面的 00,只需将您的号码与国家/地区代码放在一起即可。比如 912232232。
这里 91 是国家代码,其余是 phone 号码。这适用于该应用程序,也适用于 whatsapp 网络。
对于 Viber,此格式适用于 public 个帐户。如果您有 viber 用户名,您可以使用相同的方法。
https://viber.me/username/
会将您发送到该页面。
这甚至适用于 facebook。如果您的 Facebook 个人资料对搜索引擎可见,您可以使用此方法。
使用上面的格式
fb.me/username
这会将您重定向到用户的 Facebook 页面。我认为它也适用于页面。但我 tried.I 不相信它应该有效。
实际上 viber://add?number=XXXXXXXXX
不适用于桌面应用程序,它仅在您从移动 phone 打开时才有效。对于桌面,您需要使用 viber://chat?number=XXXXXXXXX
.
对于whatsapplink很简单:https://wa.me/XXXXXXXXXX
.
记住如何为所有信使生成 links 是不真实的,所以我总是使用 https://msng.link/ 生成 whatsapp 和电报 link,这很容易。
Viber link 给用户应该是这样的:
viber://contact?number=%2B0000000000000
使用不带 +
但带 %2B
的国际电话号码格式。
Viber 针对台式机和移动设备使用不同的 links。
对于移动设备:
<a href="viber://chat?number=PHONE_WITHOUT_PLUS">Text to Viber</a>
<a href="viber://add?number=PHONE_WITHOUT_PLUS">Add the phone to Viber</a>
对于桌面设备:
<a href="viber://chat?number=+PHONE_WITH_PLUS">Text to Viber</a>
<!-- or use %2B = + -->
<a href="viber://chat?number=%2BPHONE_WITH_PLUS">Text to Viber</a>
应该安装 Viber。
在服务器代码中需要通过用户代理检测用户设备的类型(桌面或移动)或使用CSS规则(例如,@min-width()
)或JS来显示必要的link.
PHP(没有任何库):
function isMobile($userAgent) {
$userAgent = strtolower($userAgent);
$mobileAgents = array('ipad', 'iphone', 'android', 'pocket', 'palm', 'windows ce', 'windowsce', 'cellphone', 'opera mobi', 'ipod', 'small', 'sharp', 'sonyericsson', 'symbian', 'opera mini', 'nokia', 'htc_', 'samsung', 'motorola', 'smartphone', 'blackberry', 'playstation portable', 'tablet browser');
foreach ($mobileAgents as $value) {
if (strpos($userAgent, $value) !== false) return true;
};
return false;
};
// Gets a user agent from the server variable
$agent = $_SERVER['HTTP_USER_AGENT'];
// Gets a user agent from Laravel Request
$agent = request()->userAgent();
$mobile = isMobile($agent);
// Simple PHP output
<?php if($mobile): ?>
<a href="viber://chat?number=PHONE_WITHOUT_PLUS">Text to Viber</a>
<?php else: ?>
<a href="viber://chat?number=+PHONE_WITH_PLUS">Text to Viber</a>
<?php endif; ?>
HTML & CSS with the Twitter Bootstrap v5 (Large lg ≥992px):
<a href="viber://chat?number=PHONE_WITHOUT_PLUS" class="d-lg-none">Text to Viber (Mobile)</a>
<a href="viber://chat?number=+PHONE_WITH_PLUS" class="d-none d-lg-block">Text to Viber (Desktop)</a>
viber://chat?number=%2B977-9800000000
对我来说,这适用于桌面和移动设备。我用 %2B 替换了 +。
身边的人都习惯用IM。在我的网站上,我需要放置一个 link 来打开给定的即时消息应用程序(在 PC 和移动设备上)并打开向我的号码发送消息 - 但我找不到方法!
我想使用一些 URL 方案来做到这一点,但我只能找到(__number 是我的手机 phone 号码):
<a href="intent://send/__number__#Intent;scheme=smsto;package=com.whatsapp;action=android.intent.action.SENDTO;end">WhatsApp</a>
和
<a href="viber://add?number=__number__">Viber</a>
(我什至不知道我应该在+1202...中使用phone还是简单的1202...(即如果需要加号)
但坦率地说,这是行不通的。 Viber 打开它的 window 然后告诉我它不会处理那个请求,并且 WhatsApp 根本没有 linked 到 intent
方案(在几个设备和操作系统上测试)。
所以,我请你帮我解决这个小问题:什么样的 URL 会打开 Viber 和 WhatsApp 应用程序让网站的访问者与我联系?
你需要的是deep-linking,viber
和whatsapp
的一些例子是:
Viber:
<a href="viber://pa?chatURI=[public account URI]&text=[message text]"> some text </a>
WhatsApp:
<a href="whatsapp://send?abid=[users name]&text=[message text]"> some text </a>
虽然不深 link,但您也可以使用以下 url(不要在 phone 上使用 +
)用于 WhatsApp :
<a href="https://api.whatsapp.com/send?phone=0000000">Contact Me</a>
来源:
http://origamiengine.com/deep-linking
https://support.viber.com/customer/en/portal/articles/2872423-deep-links
既然你不想创建一个 public 帐户(又名 viber links 包括 /pa?)那么简单地添加 link:<a href="viber://chat?number=012345678901"">chat with me</a>
前两位是国家代码,不需要+号。
对于 WhatsUp,您可以使用此 link,这将在移动设备上打开与您的聊天,只需输入您的 phone,不带 + 号。
<a href="https://api.whatsapp.com/send?phone=123456789">WhatsUp</a>
whatsapp 很容易。
使用以下格式
**https://wa.me/123456/**
就是这样。这里 123456 表示您的 whatsapp 号码和国家代码。
不要包含 + 或前面的 00,只需将您的号码与国家/地区代码放在一起即可。比如 912232232。
这里 91 是国家代码,其余是 phone 号码。这适用于该应用程序,也适用于 whatsapp 网络。
对于 Viber,此格式适用于 public 个帐户。如果您有 viber 用户名,您可以使用相同的方法。
https://viber.me/username/
会将您发送到该页面。
这甚至适用于 facebook。如果您的 Facebook 个人资料对搜索引擎可见,您可以使用此方法。
使用上面的格式
fb.me/username
这会将您重定向到用户的 Facebook 页面。我认为它也适用于页面。但我 tried.I 不相信它应该有效。
实际上 viber://add?number=XXXXXXXXX
不适用于桌面应用程序,它仅在您从移动 phone 打开时才有效。对于桌面,您需要使用 viber://chat?number=XXXXXXXXX
.
对于whatsapplink很简单:https://wa.me/XXXXXXXXXX
.
记住如何为所有信使生成 links 是不真实的,所以我总是使用 https://msng.link/ 生成 whatsapp 和电报 link,这很容易。
Viber link 给用户应该是这样的:
viber://contact?number=%2B0000000000000
使用不带 +
但带 %2B
的国际电话号码格式。
Viber 针对台式机和移动设备使用不同的 links。
对于移动设备:
<a href="viber://chat?number=PHONE_WITHOUT_PLUS">Text to Viber</a>
<a href="viber://add?number=PHONE_WITHOUT_PLUS">Add the phone to Viber</a>
对于桌面设备:
<a href="viber://chat?number=+PHONE_WITH_PLUS">Text to Viber</a>
<!-- or use %2B = + -->
<a href="viber://chat?number=%2BPHONE_WITH_PLUS">Text to Viber</a>
应该安装 Viber。
在服务器代码中需要通过用户代理检测用户设备的类型(桌面或移动)或使用CSS规则(例如,@min-width()
)或JS来显示必要的link.
PHP(没有任何库):
function isMobile($userAgent) {
$userAgent = strtolower($userAgent);
$mobileAgents = array('ipad', 'iphone', 'android', 'pocket', 'palm', 'windows ce', 'windowsce', 'cellphone', 'opera mobi', 'ipod', 'small', 'sharp', 'sonyericsson', 'symbian', 'opera mini', 'nokia', 'htc_', 'samsung', 'motorola', 'smartphone', 'blackberry', 'playstation portable', 'tablet browser');
foreach ($mobileAgents as $value) {
if (strpos($userAgent, $value) !== false) return true;
};
return false;
};
// Gets a user agent from the server variable
$agent = $_SERVER['HTTP_USER_AGENT'];
// Gets a user agent from Laravel Request
$agent = request()->userAgent();
$mobile = isMobile($agent);
// Simple PHP output
<?php if($mobile): ?>
<a href="viber://chat?number=PHONE_WITHOUT_PLUS">Text to Viber</a>
<?php else: ?>
<a href="viber://chat?number=+PHONE_WITH_PLUS">Text to Viber</a>
<?php endif; ?>
HTML & CSS with the Twitter Bootstrap v5 (Large lg ≥992px):
<a href="viber://chat?number=PHONE_WITHOUT_PLUS" class="d-lg-none">Text to Viber (Mobile)</a>
<a href="viber://chat?number=+PHONE_WITH_PLUS" class="d-none d-lg-block">Text to Viber (Desktop)</a>
viber://chat?number=%2B977-9800000000
对我来说,这适用于桌面和移动设备。我用 %2B 替换了 +。