Det finns möjlighet att utnyttja sökfilter för utökad matchning av resultat från tjänstens resurs GET /feedbacksettings. Dessa filter skickas som header-parametrar till resursen och har följande namn-konvention:
...
En organisation med två fastigheter (fastighet A och fastighet B)
Varje fastighet nyttjar bredband, elektricitet och vatten
Ovanstående ansvarsområden har fördelats på tre olika “vaktmästare” (VM1, VM2 och VM3) som agerar som representanter för organisationen, där:
VM1 ansvarar för bredband och elektricitet i alla fastigheter (A och B)
VM2 ansvarar för vatten i fastighet A
VM3 ansvarar för vatten i fastighet B
...
Code Block |
---|
{ "id": "0d64c132-3aea-11ec-8d3d-0242ac130001", "personId": "15aee472-46ab-4f03-9605-68bd64ebc71a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "categories", "values": [ "brodband" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.1@organisation.com", "sendFeedback": true "electricity } ], "created": "2022-01-20T09:30:09.469Z" } |
VM2
Code Block |
---|
{
"id": "0d64c132-3aea-11ec-8d3d-0242ac130002",
"personId": "15aee472-46ab-4f03-9605-68bd64ebc72a",
"organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a",
"filters": [
{
"key": "facilities",
"values": [
"real_estate_A"
]
},
{
"key": "categories",
"values": [
"water"
]
}
],
"channels": [
{
"contactMethod": "EMAIL",
"destination": "vaktmastare.2@organisation.com",
"sendFeedback": true
}
],
"created": "2022-01-20T09:30:09.469Z"
} |
VM3
Code Block |
---|
{
"id": "0d64c132-3aea-11ec-8d3d-0242ac130003",
"personId": "15aee472-46ab-4f03-9605-68bd64ebc73a",
"organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a",
"filters": [
{
"key": "facilities",
"values": [
"real_estate_B"
]
},
{
"key": "categories",
"values": [
"water"
]
}
],
"channels": [
{
"contactMethod": "EMAIL",
"destination": "vaktmastare.3@organisation.com",
"sendFeedback": true
}
],
"created": "2022-01-20T09:30:09.469Z"
} |
Sökning
Tjänsten kommer alltid att svara med de poster som matchar inskickat personId / organizationId. Returnerad lista med poster sorteras utifrån hur väl respektive post matchar de sökfilter som skickats med. Nedan följer tre olika scenarion för att demonstrera funktionaliteten:
Scenario 1: Avbrott sker för bredband i fastighet B
Anrop mot GET /feedbacksettings sker med följande filter satt som headers
Code Block |
---|
x-filter-categories: broadband
x-filter-facilities: real_estate_B |
samt request-parameter
Code Block |
---|
organizationId=15aee472-46ab-4f03-9605-68bd64ebc84a |
Svaret kommer innehålla följande:
Code Block |
---|
[{ "id": "0d64c132-3aea-11ec-8d3d-0242ac130001", "personId": "15aee472-46ab-4f03-9605-68bd64ebc71a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "categories", "values": [ "brodband" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.1@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 100 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130003", "personId": "15aee472-46ab-4f03-9605-68bd64ebc73a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_B" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.3@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 67 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130002", "personId": "15aee472-46ab-4f03-9605-68bd64ebc72a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_A" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.2@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 33 }] |
Där:
VM1 matchar till 100% då
organizationId stämmer
hen har ett filter för categories som innehåller broadband som värde
hen saknar filter för facilities, (tolkas som att alla fastigheter är tillämpbara)
VM3 matchar till 67% då
organizationId stämmer
hen har ett filter för facilities som innehåller real_estate_B som värde
hen har ett filter för categories, men som inte innehåller broadband som värde
VM2 matchar till 33% då
organizationId stämmer
hen har ett filter för facilities, men som inte som innehåller real_estate_B som värde
hen har ett filter för categories, men som inte innehåller broadband som värde
Scenario 2: Avbrott sker för vatten i fastighet A
Anrop mot GET /feedbacksettings sker med följande filter satt som headers
Code Block |
---|
x-filter-categories: water
x-filter-facilities: real_estate_A |
samt request-parameter
Code Block |
---|
organizationId=15aee472-46ab-4f03-9605-68bd64ebc84a |
Svaret kommer innehålla följande:
Code Block |
---|
[{ "id": "0d64c132-3aea-11ec-8d3d-0242ac130002", "personId": "15aee472-46ab-4f03-9605-68bd64ebc72a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_A" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.2@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 100 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130001", "personId": "15aee472-46ab-4f03-9605-68bd64ebc71a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "categories", "values": [ "brodband" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.1@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 67 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130003", "personId": "15aee472-46ab-4f03-9605-68bd64ebc73a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_B" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.3@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 67 }] |
Där:
VM2 matchar till 100% då
organizationId stämmer
hen har ett filter för categories som innehåller water som värde
hen har ett filter för facilities som innehåller real_estate_A som värde
VM1 matchar till 67% då
organizationId stämmer
hen saknar filter för facilities, (tolkas som att alla fastigheter är tillämpbara)
hen har ett filter för categories, men som inte innehåller water som värde
VM3 matchar till 67% då
organizationId stämmer
hen har ett filter för categories som innehåller water som värde
hen har ett filter för facilities, men som inte som innehåller real_estate_A som värde
Scenario 3: Avbrott sker för elektricitet i fastighet B
Anrop mot GET /feedbacksettings sker med följande filter satt som headers
Code Block |
---|
x-filter-categories: electricity
x-filter-facilities: real_estate_B |
samt request-parameter
Code Block |
---|
organizationId=15aee472-46ab-4f03-9605-68bd64ebc84a |
Svaret kommer innehålla följande:
Code Block |
---|
[{ "id": "0d64c132-3aea-11ec-8d3d-0242ac130001", "personId": "15aee472-46ab-4f03-9605-68bd64ebc71a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "categories", "values": [ "brodband" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.1@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 67 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130003", "personId": "15aee472-46ab-4f03-9605-68bd64ebc73a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_B" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.3@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 67 }, { "id": "0d64c132-3aea-11ec-8d3d-0242ac130002", "personId": "15aee472-46ab-4f03-9605-68bd64ebc72a", "organizationId": "15aee472-46ab-4f03-9605-68bd64ebc84a", "filters": [ { "key": "facilities", "values": [ "real_estate_A" ] }, { "key": "categories", "values": [ "water" ] } ], "channels": [ { "contactMethod": "EMAIL", "destination": "vaktmastare.2@organisation.com", "sendFeedback": true } ], "created": "2022-01-20T09:30:09.469Z", "matchingPercent": 33 } |
...
] |
Där:
VM1 matchar till 67% då
organizationId stämmer
hen har ett filter för facilities som innehåller real_estate_B som värde
hen har ett filter för categories, men som inte innehåller electricity som värde
VM1 matchar till 67% då
organizationId stämmer
hen saknar filter för facilities, (tolkas som att alla fastigheter är tillämpbara)
hen har ett filter för categories, men som inte innehåller electricity som värde
VM3 matchar till 33% då
organizationId stämmer
hen har ett filter för facilities, men som inte som innehåller real_estate_B som värde
hen har ett filter för categories, men som inte innehåller electricity som värde