TT#133501 Add "expire" time to QR code generated for sip:phone

Change-Id: If73361c60ca55390f85181693270d0e37ed7830c
mr10.0
Carlo Venusino 4 years ago
parent b5ac2e0d52
commit 334997907c

@ -1,3 +1,3 @@
export function qrPayload ({ subscriber, server, token }) { export function qrPayload ({ subscriber, server, expire, token }) {
return `username=${subscriber}&server=${server}&token=${token}` return `username=${subscriber}&server=${server}&expire=${expire}&token=${token}`
} }

@ -24,6 +24,7 @@ import QRCode from 'qrcode'
import { import {
qrPayload qrPayload
} from 'src/helpers/qr' } from 'src/helpers/qr'
import { date } from 'quasar'
export default { export default {
namespaced: true, namespaced: true,
@ -408,12 +409,14 @@ export default {
}, },
async fetchAuthToken ({ commit, state, getters }, expiringTime = 300) { async fetchAuthToken ({ commit, state, getters }, expiringTime = 300) {
const subscriber = state.subscriber const subscriber = state.subscriber
const expireDate = date.addToDate(new Date(), { seconds: expiringTime })
commit('setQrExpiringTime', expiringTime) commit('setQrExpiringTime', expiringTime)
try { try {
const authToken = await createAuthToken(expiringTime) const authToken = await createAuthToken(expiringTime)
const data = qrPayload({ const data = qrPayload({
subscriber: subscriber.username, subscriber: subscriber.username,
server: subscriber.domain, server: subscriber.domain,
expire: expireDate.getTime(),
token: authToken token: authToken
}) })
const qrCode = await QRCode.toDataURL(data) const qrCode = await QRCode.toDataURL(data)

@ -9,11 +9,13 @@ describe('QR helpers', function () {
it('checks the format of QR payload', () => { it('checks the format of QR payload', () => {
const subscriber = '43991002' const subscriber = '43991002'
const server = 'sipwise.com' const server = 'sipwise.com'
const expire = new Date().getTime()
const token = 'e7cd5253-79fc-4aec-bb1b-4b86eff96c7d' const token = 'e7cd5253-79fc-4aec-bb1b-4b86eff96c7d'
const payload = `username=${subscriber}&server=${server}&token=${token}` const payload = `username=${subscriber}&server=${server}&expire=${expire}&token=${token}`
const result = qrPayload({ const result = qrPayload({
subscriber: subscriber, subscriber: subscriber,
server: server, server: server,
expire: expire,
token: token token: token
}) })
expect(result).toBe(payload) expect(result).toBe(payload)

Loading…
Cancel
Save