transform-bold-chat

0.0.6 • Public • Published

Transform Bold360 to Livechat

Transform Bold360 chat payload to Livechat chat payload.

Install

$ yarn install transform-bold-chat

Usage

const { transform } = require('transform-bold-chat');

const chat = transform(bold360ChatPayload);

Expected Bold 360 Chat Payload input

{
	RegionCode: 'Central Macedonia',
	Secured: 0,
	WindowClosed: null,
	UserStatusID: null,
	InvitationTemplateVariantID: null,
	VisitorMessageCount: 1,
	VisitInfo: null,
	VideoSessionStatus: null,
	ResponseMessageCount: 0,
	ExternalCrmType: null,
	SurveyComments: 'post chat comments',
	Embedded: 1,
	AutoTranslate: 0,
	InitialDepartmentID: '107972173855710031',
	LastAssignedByOperatorID: null,
	DeletedBy: null,
	Load: null,
	VisitCreated: '2020-02-20T08:42:41.000Z',
	VisitRef: null,
	IP: '94.69.228.151',
	Disconnected: '2020-02-20T09:03:21.000Z',
	RedirectStatus: null,
	ChatStatusType: 6,
	EndedReasonType: 1,
	BlockedBy: null,
	LastAssignedAnswered: '2020-02-20T09:02:32.000Z',
	VisitEmailAddress: 'thanos@thechatshop.com',
	ClientType: 0,
	SurveyResponsiveness: 3,
	Started: '2020-02-20T09:02:27.000Z',
	ExternalCrmListID: null,
	FolderID: '107904642304297496',
	UnavailableEmailBody: null,
	Experiments: null,
	LastVideoSessionID: null,
	ChatAPISettingsID: null,
	WebsiteDefID: '107972174773185283',
	Created: '2020-02-20T08:50:23.390Z',
	CustomField1ID: null,
	ActiveAssistStatus: 0,
	ChatType: 0,
	LastMessagePersonType: 1,
	OperatorMessageCount: 0,
	UnavailableEmailSubject: null,
	Deleted: null,
	VisitorID: '107990978786743687',
	AutoAnswerQuestionCount: null,
	AccountID: '106562681705387893',
	ACDReassignCount: 0,
	UserCategoryID: null,
	LastOperatorLanguageCode: null,
	Ended: '2020-02-20T09:03:04.000Z',
	XmppUserID: null,
	RequestedOperatorID: null,
	RelatedToItemID: null,
	AssignedByAPI: 0,
	ExternalCrmItemID: null,
	ChatButtonDefID: '107972796068666730',
	ScheduleHistoryToEmailAddress: 'thanos@thechatshop.com',
	ChatWindowDefID: '107972174903445584',
	SurveyOverall: 4,
	VisitID: '107990978204302548',
	PostChatCustomFieldAnswerStatus: 4,
	LanguageCode: 'en-US',
	ChatUrl: 'https://thechatshop.com/dev/test-chat.html',
	OperatorCustomFields: {
		primary_tag: 'Lead',
		secondary_tag: 'escalate',
	},
	CustomField2ID: null,
	XmppClientID: null,
	LastACDStarted: '2020-02-20T09:02:27.000Z',
	PageType: 10,
	ActiveAssistDisabled: 0,
	CustomUrl: null,
	XmppUser: null,
	Availability: 0,
	MaxQueuePosition: 0,
	SurveyKnowledge: 3,
	Updated: '2020-02-20T09:04:04.180Z',
	Priority: null,
	ChatName: 'first name',
	City: 'Thessaloniki',
	ChatID: '107990982891167447',
	OperatorLanguageCode: null,
	CustomFields: {
		prechat_survey_field1: 'pre chat field 1',
		postchat_survey_field1: 'post chat field 1',
	},
	ExperimentDate: null,
	AreaCode: null,
	LastName: 'last name',
	TotalResponseTime: 0,
	FlaggedBy: null,
	ACDAssignmentExpires: null,
	OperatorID: '107905455413102470',
	LastVisitorMessageSent: '2020-02-20T09:02:50.000Z',
	VisitorClientID: '8894617890582013061',
	IncidentID: null,
	SurveyProfessionalism: 4,
	UnrespondedMessageCount: 1,
	TotalReassignCount: 1,
	SurveyNps: 7,
	RelatedToItemType: 0,
	XmppThread: null,
	DepartmentID: '107972173855710031',
	DueDate: null,
	CountryCode: 'GR',
	InitialQuestion: null,
	ReverseIP: 'ppp-94-69-228-151.home.otenet.gr',
	VisitPhone: '6978791292',
	EndedBy: '107905455413102470',
	Answered: '2020-02-20T09:02:32.000Z',
	AutoTranslateAllowOriginal: 1,
	Closed: '2020-02-20T09:04:04.000Z',
	Flagged: null,
	transcript: [
		{
			SystemMessage: null,
			AccountID: '106562681705387893',
			CannedMessageID: null,
			ChatMessageID: '76194622379610583',
			VisitorFacing: null,
			PersonType: 1,
			Text: 'hi',
			Name: 'first name',
			ChatID: '107990982891167447',
			Created: '2020-02-20T09:02:50.950Z',
			LanguageCode: 'en-US',
			MessageKey: null,
			PersonID: '107990978786743687',
			Hidden: null,
			HasAutoTranslationError: null,
			Deleted: null,
			OriginalMessageID: null,
		},
		{
			SystemMessage: null,
			AccountID: '106562681705387893',
			CannedMessageID: null,
			ChatMessageID: '1663901027497522887',
			VisitorFacing: null,
			PersonType: 0,
			Text: '<p>bye</p>',
			Name: 'Tasos',
			ChatID: '107990918110291483',
			Created: '2020-02-20T07:01:41.947Z',
			LanguageCode: 'en-US',
			MessageKey: null,
			PersonID: '107905457743453281',
			Hidden: null,
			HasAutoTranslationError: null,
			Deleted: null,
			OriginalMessageID: null,
		},
	],
	agent: [
		{
			email: 'thanos@thechatshop.co.uk',
			displayName: 'Thanos',
		},
	],
};

Expected Livechat Chat Payload output

 {
	id: '107990982891167447',
	tags: [ 'Lead', 'escalate' ],
	duration: 37,
	source: 'bold360',
	postchatSurvey: [ { key: 'survey_field1', value: 'post chat field 1' } ],
	prechatSurvey: [ { key: 'survey_field1', value: 'pre chat field 1' } ],
	events: [
		{
			authorName: 'first name',
			text: 'hi',
			date: '2020-02-20T09:02:50.950Z',
			userType: 'visitor',
			type: 'message',
			timestamp: 1582189371,
			agentId: null
		},
		{
			authorName: 'Tasos',
			text: 'bye',
			date: '2020-02-20T07:01:41.947Z',
			userType: 'agent',
			type: 'message',
			timestamp: 1582182102,
			agentId: '107905457743453281'
		}
	],
	endedTimestamp: 1582189384,
	engagement: 'immediate_start',
	chatStartUrl: 'https://thechatshop.com/dev/test-chat.html',
	rate: 'rated_good',
	startedTimestamp: 1582189347,
	visitor: {
		id: '8894617890582013061',
		name: 'first name',
		ip: '94.69.228.151',
		city: 'Thessaloniki',
		countryCode: 'GR',
		region: 'Central Macedonia'
	}
}

Readme

Keywords

none

Package Sidebar

Install

npm i transform-bold-chat

Weekly Downloads

1

Version

0.0.6

License

MIT

Unpacked Size

18.8 kB

Total Files

12

Last publish

Collaborators

  • thechatshop