Создайте ссылку, которая откроет Viber и WhatsApp и отправит мне сообщение

Все вокруг привыкли пользоваться IM. На моем сайте мне нужно поставить ссылку, которая откроет данное приложение для обмена мгновенными сообщениями (как на ПК, так и на мобильном телефоне) и откроет сообщение для отправки на мой номер - и я не могу найти способ!

Я полагаю, что для этого нужно использовать какую-то схему URL, но все, что я могу найти, это (__number — номер моего мобильного телефона):

<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... или просто 1202... (то есть, если нужен плюс)

но, честно говоря, это не сработает. Viber открывает свое окно, а затем сообщает мне, что не будет обрабатывать этот запрос, а WhatsApp вообще не привязан к схеме intent (проверено на нескольких устройствах и ОС).

Итак, я прошу вас помочь мне с этой небольшой проблемой: какой URL-адрес будет открывать приложения Viber и WhatsApp, чтобы посетители сайта могли связаться со мной?


person Alexander    schedule 25.12.2016    source источник


Ответы (7)


То, что вам нужно, называется глубокие ссылки, некоторые примеры для viber и whatsapp:

Вайбер:

<a href="viber://pa?chatURI=[public account URI]&text=[message text]"> some text </a>

Ватсап:

<a href="whatsapp://send?abid=[users name]&text=[message text]"> some text </a>

Хотя это и не глубокая ссылка, вы также можете использовать следующий URL (не используйте + на телефоне) для 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

person Pedro Lobito    schedule 25.12.2016
comment
Спасибо, но это отправит мне предопределенное сообщение, не так ли, и я не хочу этого, я хочу открыть окно чата на компьютере посетителя, чтобы он/она мог напечатать мне свое собственное сообщение. Является ли это возможным? До сих пор не вижу документации по этому вопросу на сайтах Viber и WA. - person Alexander; 27.12.2016
comment
И нет, я не хочу создавать публичный аккаунт в Viber именно для этой цели, я хочу пообщаться со своим обычным аккаунтом Viber! - person Alexander; 27.12.2016

Ссылка Viber на пользователя должна быть такой:

viber://contact?number=%2B0000000000000

Используйте формат международного телефонного номера без +, но с %2B.

person Iggy    schedule 07.01.2019

Поскольку вы не хотите создавать общедоступную учетную запись (например, ссылки Viber, включая /pa?), просто добавьте ссылку: <a href="viber://chat?number=012345678901"">chat with me</a> Первые две цифры — это код страны, и знак + не требуется.

person prokopis kontogiannis    schedule 18.05.2018

Для WhatsUp вы можете использовать эту ссылку, которая откроет чат с вами на мобильном телефоне, просто введите свой телефон без знака +.

<a href="https://api.whatsapp.com/send?phone=123456789">WhatsUp</a>

person Viaceslav Vasiljev    schedule 02.07.2018

На самом деле viber://add?number=XXXXXXXXX не работает для настольного приложения, оно работает только при открытии с мобильного телефона. Для рабочего стола вам нужно использовать viber://chat?number=XXXXXXXXX.

Для WhatsApp ссылка очень проста: https://wa.me/XXXXXXXXXX.

Помните, как генерировать ссылки для всех мессенджеров нереально, поэтому я всегда использую https://msng.link/ для генерации Ссылка на WhatsApp и Telegram, это очень просто.

person anstak    schedule 24.11.2018

Для WhatsApp это легко.

используйте следующий формат **https://wa.me/123456/** и все. здесь 123456 означает ваш номер WhatsApp с кодом страны. Не включайте + или предшествующий 00, просто введите свой номер с кодом страны. например 912232232. Здесь 91 — это код страны, а остальное — номер телефона. это работает с приложением, а также с веб-сайтом WhatsApp.

для Viber этот формат работает с публичными аккаунтами. если у вас есть имя пользователя Viber, вы можете использовать тот же метод.

https://viber.me/username/ отправит вас на страницу.

это даже работает для facebook. если ваш профиль Facebook виден поисковым системам, вы можете использовать этот метод.

используйте вышеуказанный формат с fb.me/username, это перенаправит вас на страницу пользователя facebook. Я думаю, что это работает и для страниц. но я не пробовал. Я считаю, что это должно сработать.

person waruna abeykoon    schedule 21.08.2018

Viber использует разные ссылки для компьютеров и мобильных устройств.

Для мобильных устройств:

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

Вайбер должен быть установлен.

В коде сервера необходимо определить тип устройства пользователя (настольный или мобильный) с помощью пользовательского агента или использовать правила CSS (например, @min-width()) или JS для отображения необходимой ссылки.

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 с 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>
person Oleg Dmitrochenko    schedule 27.02.2021
comment
Спасибо. На текущий момент ссылка с +PHONE_WITH_PLUS работает как на ПК, так и на мобильных устройствах. - person Svetoslav Stefanov; 30.07.2021