UNPKG

botfriends-handover-nodejs

Version:

NodeJs wrapper for BOTfriends Handover Tool

109 lines (103 loc) 2.37 kB
import axios from 'axios' import { IData } from '../interfaces' const sendToGateway = async (jwt: string, backendUrl: string, data: IData) => { try { await axios.post(`${backendUrl}gateway`, data, { headers: { 'Content-Type': 'application/json', 'Authorization': `jwt ${jwt}` } }) return { success: true } } catch (err) { return { success: false, message: err.response.data } } } const checkGatewayStatus = async (jwt: string, backendUrl: string) => { try { const response = await axios.get(`${backendUrl}gateway`, { headers: { 'Content-Type': 'application/json', 'Authorization': `jwt ${jwt}` } }) return { success: true, data: response.data } } catch (err) { return { success: false, message: err.response.data } } } const sendStartHandover = async (jwt: string, backendUrl: string, userId: string) => { try { const response = await axios.post(`${backendUrl}gateway/startHandover/${userId}`, {}, { headers: { 'Content-Type': 'application/json', 'Authorization': `jwt ${jwt}` } }) return { success: true, data: response.data } } catch (err) { return { success: false, message: err.response.data } } } const queryHandoverStatus = async (jwt: string, backendUrl: string, userId: string) => { try { const response = await axios.get(`${backendUrl}gateway/handoverStatus/${userId}`, { headers: { 'Content-Type': 'application/json', 'Authorization': `jwt ${jwt}` } }) return { success: true, data: response.data } } catch (err) { return { success: false, message: err.response.data } } } const queryConversationIds = async (jwt: string, backendUrl: string) => { try { const response = await axios.get(`${backendUrl}gateway/conversationIds`, { headers: { 'Content-Type': 'application/json', 'Authorization': `jwt ${jwt}` } }) return { success: true, data: response.data } } catch (err) { return { success: false, message: err.response.data } } } export { queryConversationIds, sendStartHandover, queryHandoverStatus, sendToGateway, checkGatewayStatus }