Страницы

Поиск по вопросам

Показаны сообщения с ярлыком viber. Показать все сообщения
Показаны сообщения с ярлыком viber. Показать все сообщения

пятница, 24 января 2020 г.

Не получается установить вебхук(viber)

#python #post #curl #viber


Следовал инструкции с офф.сайта

Вот views.py файлик

@csrf_exempt
def botviber(request):
    bot_configuration = BotConfiguration(
        name='zxcasdqwezxcasdqwe',
        avatar='http://viber.com/avatar.jpg',
        auth_token='************************'
    )

    viber = Api(bot_configuration)
    viber.set_webhook('https://sitename.ninja/botviber/')

    viber_request = viber.parse_request(request.get_data())
    print(viber_request)


После этого при попытке перейти на сайт - получаю вот такую ошибку:

Exception at /botviber/
failed with status: 1, message: Result[HttpRequest[POST /botviber/ HTTP/1.1]@533b70c
> HttpResponse[null 0 null]@28581fb9] java.util.concurrent.TimeoutException: Total
timeout elapsed


Забил на это, решил через curl сделать вебхук

Вот команда curl -# -i -g -H "X-Viber-Auth-Token:*****" -d @vibe.json -X POST https://chatapi.viber.com/pa/set_webhook -v

Cам vibe.json файл

{
  "url": "https://sitename.ninja"
}


Тоже ошибка - 

Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying 52.4.209.25...
* Connected to chatapi.viber.com (52.4.209.25) port 443 (#0)
* found 148 certificates in /etc/ssl/certs/ca-certificates.crt
* found 594 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* SSL connection using TLS1.2 / ECDHE_RSA_AES_128_GCM_SHA256
*    server certificate verification OK
*    server certificate status verification SKIPPED
*    common name: *.viber.com (matched)
*    server certificate expiration date OK
*    server certificate activation date OK
*    certificate public key: RSA
*    certificate version: #3
*    subject: C=LU,ST=Luxembourg,L=Luxembourg,O=Viber Media Sarl,OU=IT,CN=*.viber.com
*    start date: Sun, 26 Jun 2016 00:00:00 GMT
*    expire date: Tue, 26 Jun 2018 23:59:59 GMT
*    issuer: C=US,O=thawte\, Inc.,CN=thawte SSL CA - G2
*    compression: NULL
* ALPN, server did not agree to a protocol
> POST /pa/set_webhook HTTP/1.1
> Host: chatapi.viber.com
> User-Agent: curl/7.47.0
> Accept: */*
> X-Viber-Auth-Token:security
> Content-Length: 39
> Content-Type: application/x-www-form-urlencoded
> 
* upload completely sent off: 39 out of 39 bytes
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< cache-control: no-cache no-store
cache-control: no-cache no-store
< content-type: application/json
content-type: application/json
< date: Sat Feb 10 21:03:46 2018
date: Sat Feb 10 21:03:46 2018
< Content-Length: 158
Content-Length: 158
< Connection: keep-alive
Connection: keep-alive

< 
* Connection #0 to host chatapi.viber.com left intact
{"status":1,"status_message":"Result[HttpRequest[POST / HTTP/1.1]@40da913d > HttpResponse[null
0 null]@c0d645f] java.nio.channels.UnresolvedAddressEx


Помогите пожалуйста, в чем здесь вообще ошибка и как быть
    


Ответы

Ответ 1



Ошибка решилась. В json файле с адресом оказалась 1 русская буква.

воскресенье, 15 декабря 2019 г.

Viber API отправка сообщений

#php #html #json #api #viber


Здравствуйте. Появилась идея сделать отправку сообщений в public account на Viber
через сайт. На оф. сайте ничего толком не понятно как это реализовать. Сам аккаунт
уже завел.
Например, простая форма: поле и кнопка. хочу при нажатии сделать отправку туда. Как
это сделать? (Гугл не помог)




Ответы

Ответ 1



Здравствуйте. Вот пример моего кода: class Viber { private $url_api = "https://chatapi.viber.com/pa/"; private $token = ""; public function message_post ( $from, // ID администратора Public Account. array $sender, // Данные отправителя. $text // Текст. ) { $data['from'] = $from; $data['sender'] = $sender; $data['type'] = 'text'; $data['text'] = $text; return $this->call_api('post', $data); } private function call_api($method, $data) { $url = $this->url_api.$method; $options = array( 'http' => array( 'header' => "Content-type: application/x-www-form-urlencoded\r\nX-Viber-Auth-Token: ".$this->token."\r\n", 'method' => 'POST', 'content' => json_encode($data) ) ); $context = stream_context_create($options); $response = file_get_contents($url, false, $context); return json_decode($response); } } $Viber = new Viber(); $Viber->message_post( '01234567890A=', [ 'name' => 'Admin', // Имя отправителя. Максимум символов 28. 'avatar' => 'http://avatar.example.com' // Ссылка на аватарку. Максимальный размер 100кб. ], 'Test' ); Этот класс можно продолжить добавляя функции к каждому методу.

четверг, 28 ноября 2019 г.

Ссылки на Viber, Whatsapp, Telegram

#link #href #telegram #whatsapp #viber


Как на сайт вставить ссылки на Viber, Whatsapp и Telegram, при клике на которые открывалось
приложение и сразу переходило на чат с указанным номером. Ну и соответственно учитывая
мобильные устройства.

С Viber получилось вот так:




Viber открывается он пишет ошибку "Действие не может быть выполнено".

Whatsapp с Telegram открывают программу но молчат вообще
    


Ответы

Ответ 1



Для Viber
телефон в формате +(код страны) номер. + заменить на %2B Для Telegram

Ответ 2



для Viber:


Ответ 3



Для Whatsapp


Ответ 4



Для whatsapp с сообщением:
Написать в WhatsApp (номер и текст который сразу ставится в поле ввода замените на свой, %20 это пробел) Для телеграма и вайбера уже написали ответы. P.S.: Ещё возможно у Вас не работает по той причине, что Вы пишете + перед номером телефона, этого делать НЕ нужно.

понедельник, 26 ноября 2018 г.

Viber API отправка сообщений

Здравствуйте. Появилась идея сделать отправку сообщений в public account на Viber через сайт. На оф. сайте ничего толком не понятно как это реализовать. Сам аккаунт уже завел. Например, простая форма: поле и кнопка. хочу при нажатии сделать отправку туда. Как это сделать? (Гугл не помог)



Ответ

Здравствуйте. Вот пример моего кода:
class Viber { private $url_api = "https://chatapi.viber.com/pa/";
private $token = "";
public function message_post ( $from, // ID администратора Public Account. array $sender, // Данные отправителя. $text // Текст. ) { $data['from'] = $from; $data['sender'] = $sender; $data['type'] = 'text'; $data['text'] = $text; return $this->call_api('post', $data); }
private function call_api($method, $data) { $url = $this->url_api.$method;
$options = array( 'http' => array( 'header' => "Content-type: application/x-www-form-urlencoded
X-Viber-Auth-Token: ".$this->token."
", 'method' => 'POST', 'content' => json_encode($data) ) ); $context = stream_context_create($options); $response = file_get_contents($url, false, $context); return json_decode($response); } } $Viber = new Viber(); $Viber->message_post( '01234567890A=', [ 'name' => 'Admin', // Имя отправителя. Максимум символов 28. 'avatar' => 'http://avatar.example.com' // Ссылка на аватарку. Максимальный размер 100кб. ], 'Test' );
Этот класс можно продолжить добавляя функции к каждому методу.