botfriends-handover-nodejs
Version:
NodeJs wrapper for BOTfriends Handover Tool
109 lines (103 loc) • 2.37 kB
text/typescript
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
}