С помощью RingCentral Engage Digital ваша компания может подключить все свои каналы обслуживания клиентов, включая электронную почту, Twitter, Facebook, Instagram, YouTube, SMS и многие другие встроенные учетные записи социальных сетей.

Что делать, если ваша предпочтительная учетная запись или канал в социальной сети не была в этом списке? Тогда не волнуйтесь, потому что RingCentral Engage Digital также имеет общее настраиваемое решение, называемое источником SDK, с источником SDK вы можете подключить любой источник к RingCentral Engage Digital. У нас есть подробная документация, которая поможет вам создать источник SDK, который может занять некоторое время, чтобы протестировать и понять весь процесс, но это позволяет вам настроить рабочий процесс, сделав его еще лучше для себя в долгосрочной перспективе и повысив эффективность ваше омницифровое обслуживание клиентов.

Поскольку мы знаем, что создание собственного SDK может занять некоторое время и быть немного сложным, мы создали эту структуру: Engagement-digital-source-sdk-js, чтобы упростить процесс создания источника SDK. А теперь приступим.

Предпосылки

  • Nodejs 8.10 + / npm, мы рекомендуем использовать nvm для установки nodejs / npm.
  • Учетная запись RingCentral Engage Digital, если у вас еще нет учетной записи, обязательно запросите демонстрацию.

Быстрый старт

Давайте запустим простой исходный сервер RingCentral Engage.

# get the code
git clone [email protected]:ringcentral/engage-digital-source-sdk-js.git
cd engage-digital-source-sdk-js
# install dependecies
npm i
# start proxy server, this will make it so your local bot server can be accessed by the RingCentral service
npm run ngrok
# will show
Forwarding                    https://xxxx.ap.ngrok.io -> localhost:6066
# Remember the https://xxxx.ap.ngrok.io, we will use it later

Следуйте Пошаговому руководству по созданию источника Engage DigitalSDK в консоли администратора, чтобы подготовить источник.

# create env file
cp .env.sample .env
# then edit .env, set proper setting according to the tip in .env
# run local dev server
npm start

Тестовый исходный сервер

Сохраните исходный код, ваш сервер получит запрос, а затем вы проверите журнал запросов с консоли.

Записать файл конфигурации исходного сервера SDK

Теперь у вас есть некоторые идеи о том, как это будет работать, поэтому вы можете начать писать свою собственную исходную логику SDK, для этого просто требуется файл конфигурации, а затем вы можете запустить свой сервер с помощью кода, указанного ниже:

npx ringcentral-engage-source path-to-your-source-server-config.js

Но как написать файл конфигурации? Просто проверьте demo-config.js в качестве примера, а затем напишите свой собственный метод onRequest, вы также можете увидеть пример ниже:

/**
 * handle all request
 * @param {object} body, request body
 * @param {object} req, express request
 */
exports.onRequest = async (body, req) => {
  console.log('body:', body)
  const { action, params } = body
  console.log('param', params)
  let result
  // check https://github.com/ringcentral/engage-digital-source-sdk/wiki for more info
  switch (action) {
    case 'implementation.info':
      result = {
        objects:
        {
          messages: ['create', 'show', 'list'],
          private_messages: ['create', 'show', 'list'],
          threads: ['create', 'show', 'list']
        },
        options: []
      }
      break

    case 'threads.list':
    case 'private_messages.list':
    case 'messages.list':
      result = []
      break
    case 'threads.show':
    case 'private_messages.show':
    case 'messages.show':
      result = ''
      break
    default:
      result = {}
  }
  return result
}

// extends or override express app as you need
exports.appExtend = (app) => {
  // app.get('/some-route', (req, res) => res.end('some'))
}

И у нас также есть несколько реальных примеров, которые вы можете проверить:

Используйте его как модуль

Если вы хотите полностью настроить свой сервер, вы, безусловно, можете использовать его как обычный модуль npm. Дополнительную информацию о том, как это сделать, можно найти в руководстве docs / direct-use.md.

Инициируйте проект исходного сервера с помощью фабричного инструмента командной строки

Теперь, возможно, вы хотите создать приложение для его тестирования, поэтому у нас есть встроенная команда CLI для запуска пустого проекта из шаблона: https://github.com/ringcentral/engage-digital-source-server-template- js .

npm i -g ringcentral-engage-source
ringcentral-engage-source-create my-app

Мы надеемся, что вам понравится создавать с его помощью собственный исходный код SDK, и что вы поделитесь с нами всеми интересными вещами, которые вы создали.

Чтобы узнать больше о других инструментах / SDK / документах, которые у нас есть, обязательно посетите наш сайт для разработчиков и, если вы когда-нибудь застряли, обязательно зайдите на наш форум разработчиков. или отправьте вопрос в одном из репозиториев github .

Хотите быть в курсе и узнавать о новых API и функциях? Присоединяйтесь к нашей программе Game Changer и получайте отличные награды за развитие своих навыков и изучение RingCentral больше!