1.2.0 • Published 4 years ago

@mangar2/matchmessages v1.2.0

Weekly downloads
4
License
LGPL-3.0-or-later
Repository
github
Last release
4 years ago

Abstract

Stores messages and checks , if a new message ( usually a reply ) matches one of the send messages It only matches "action messages" , i . e . messages whose topic ends on '/set' , '/get' , '/temporary' , or '/blink'

Contents

Meta

Filematchmessages.js
AbstractStores messages and checks , if a new message ( usually a reply ) matches one of the send messages It only matches "action messages" , i . e . messages whose topic ends on '/set' , '/get' , '/temporary' , or '/blink'
AuthorVolker Böhm
CopyrightCopyright ( c ) 2020 Volker Böhm
LicenseThis software is licensed under the GNU LESSER GENERAL PUBLIC LICENSE Version 3 . It is furnished "as is" , without any support , and with no warranty , express or implied , as to its usefulness for any purpose .

Class MatchMessages

new MatchMessages()

Matches incoming "set" messages and outgoing messages to fill up the reason info

Example

const match = new MatchMessages()
match.addReceivedMessage(new Message('a/b', 'on', 'just a reason'))
const replyMessage = new Message('a/b', 'on', 'reply')
replyMessage = match.matchAndUpdateReplyMessage(replyMessage)

MatchMessages Methods

addReceivedMessage

addReceivedMessage (message)

Adds a message to the received message list to match it with a reply

addReceivedMessage Parameters
NameTypeDescription
messageMessagemessage to store in the "received message list"

constructor

constructor ()

Constructs a new MatchMessage

hasMatchingMessage

hasMatchingMessage (message) => {boolean}

Checks , if a reply message matches any message received lately ( in the last 30 seconds )

hasMatchingMessage Parameters
NameTypeDescription
messageMessagemessage to match
hasMatchingMessage returns
TypeDescription
booleantrue , if the message has a matching message with the same topic

matchAndUpdateReplyMessage

matchAndUpdateReplyMessage (message) => {Message}

Matches a reply message with a received message , updates the reasons and removes the received message from the message list The messages matches , if the have the save core topic ( topic without action , 'set' , 'get' , 'temporary' , 'blink' ) and the same value

matchAndUpdateReplyMessage Parameters
NameTypeDescription
messageMessagemessage to match
matchAndUpdateReplyMessage returns
TypeDescription
Messagematched message with updated reason or unchanged message , if the message do not match with a stored message