Blame view
lib/prefixes/index.js
765 Bytes
8295b94e7
|
1 |
'use strict'; |
48edb4d58
|
2 |
const TTL_SECS = 30; |
8295b94e7
|
3 |
const coreapi = require('komodo-sdk/coreapi'); |
4a1706c99
|
4 5 6 |
const NodeCache = require( "node-cache" ); const cache = new NodeCache({ |
48edb4d58
|
7 |
stdTTL: TTL_SECS, |
4a1706c99
|
8 |
}); |
8295b94e7
|
9 10 11 |
async function lookup(number) { if (!number) return; |
4a1706c99
|
12 13 14 |
if (cache.get(number)) { return cache.get(number); } |
8295b94e7
|
15 16 17 18 19 20 21 22 23 |
const [err, lookupResult] = await coreapi({ path: '/prefixes/lookup', method: 'GET', qs: { number, } }); if (err || !lookupResult || lookupResult.error) { |
4a1706c99
|
24 |
cache.del(number); |
8295b94e7
|
25 26 |
return; } |
4a1706c99
|
27 28 29 30 31 |
if (lookupResult.prefix) { cache.set(number, lookupResult.prefix); } else { cache.del(number); } |
8295b94e7
|
32 33 34 35 |
return lookupResult.prefix; } exports.lookup = lookup; |