Skip to content

Scanner

Public surface (scanner): scanBusinessCard · scanBadge

iOS app only — both methods throw UnsupportedEnvironment (unsupported_environment) outside iOS.

type ScanStatus = 'success' | 'cancelled' | 'failed'
type ScanResult = WithStatusBooleans<
| { status: 'success'; attendee: Attendee }
| { status: 'success'; businessCard: BusinessCard }
| { status: 'cancelled' }
| { status: 'failed'; error: string }
>
// booleans: isSuccess, isCancelled, isFailed
scanBusinessCard(eventID?: number): Promise<ScanResult>
import mobilelocker from '@mobilelocker/javascript-sdk'
const result = await mobilelocker.scanner.scanBusinessCard(eventID) // eventID optional
if (result.isSuccess) {
console.log(result.businessCard)
await mobilelocker.storage.save('last-business-card', result.businessCard)
} else if (result.isCancelled) {
// user cancelled
} else if (result.isFailed) {
console.error(result.error)
}
scanBadge(eventID: number): Promise<ScanResult> // eventID required
const result = await mobilelocker.scanner.scanBadge(eventID)
if (result.isSuccess) {
console.log(result.attendee)
}

Always check isSuccess / status === 'success' before reading businessCard or attendee.