承接 olegf13/jivochat-webhooks-api 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

olegf13/jivochat-webhooks-api

最新稳定版本:1.1

Composer 安装命令:

composer require olegf13/jivochat-webhooks-api

包简介

Library for Jivochat (Jivosite) Webhooks API integration.

README 文档

README

Latest Stable Version License

Library for Jivochat (Jivosite) Webhooks API integration.

This library allows you to integrate with Jivosite Webhooks API and:

  • handle API calls in event-based manner;
  • convert API requests JSON data in particular event objects;
  • generate API responses;
  • save original request (and generated response) data into MySQL or MongoDB server, and log it via Monolog.

For Russian documentation see README-ru.md.

Requirements

The library requires PHP 7.0 or above for basic usage.

Optional requirements:

  • PDO extension allows logging of Webhooks request/response data to a MySQL server;
  • Monolog library allows logging of Webhooks request/response using Monolog;
  • MongoDB library allows logging of Webhooks request/response data to a MongoDB server.

It is strongly recommended to have at least one of above loggers installed to hold a "backup" of original requests sent via Webhooks API.

Installation

The preferred way to install this library is through Composer. To install the latest version, run:

composer require olegf13/jivochat-webhooks-api

Basic usage

<?php
use Olegf13\Jivochat\Webhooks\Log\MySQLLog;
use Olegf13\Jivochat\Webhooks\Event\Event;

// create MySQL logger
$dbLogger = new MySQLLog(new PDO('mysql:dbname=test;host=127.0.0.1', 'root', 'root'));

// create Callback API event listener
$listener = new Olegf13\Jivochat\Webhooks\EventListener([$dbLogger]);

// bind listener for `chat_accepted` event
$listener->on(Event::EVENT_CHAT_ACCEPTED, function (Olegf13\Jivochat\Webhooks\Event\ChatAccepted $event) {
    // here you do your stuff - find user in your database, etc
    $user = User::getByEmail($event->visitor->email);
    
    // generate response on Callback API
    $response = new Olegf13\Jivochat\Webhooks\Response();
    $response->setCRMLink(...);
    $response->setContactInfo(...);
    $response->setCustomData(...);
    
    // event handler must return Response object
    return $response;
});

// bind listener for `chat_accepted` event
$listener->on(Event::EVENT_CHAT_FINISHED, function (Olegf13\Jivochat\Webhooks\Event\ChatFinished $event) {
    /** @var int Timestamp of the chat's first message. */
    $chatBeginAt = $event->chat->messages[0]->timestamp;
    // ...
    
    return new Olegf13\Jivochat\Webhooks\Response();
});

// execute event listener
$listener->listen();

Documentation

License

This library is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

Thanks to this Jivosite Webhook handler library.

统计信息

  • 总下载量: 14.21k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 9
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-04-20