本文整理汇总了TypeScript中file-box.FileBox.toBase64方法的典型用法代码示例。如果您正苦于以下问题:TypeScript FileBox.toBase64方法的具体用法?TypeScript FileBox.toBase64怎么用?TypeScript FileBox.toBase64使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类file-box.FileBox
的用法示例。
在下文中一共展示了FileBox.toBase64方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: contactAvatar
public async contactAvatar(contactId: string, file?: FileBox): Promise<void | FileBox> {
log.verbose('PuppetPadchat', 'contactAvatar(%s%s)',
contactId,
file ? (', ' + file.name) : '',
)
/**
* 1. set avatar for user self
*/
if (file) {
if (contactId !== this.selfId()) {
throw new Error('can not set avatar for others')
}
if (!this.padchatManager) {
throw new Error('no padchat manager')
}
await this.padchatManager.WXSetHeadImage(await file.toBase64())
return
}
/**
* 2. get avatar
*/
const payload = await this.contactPayload(contactId)
if (!payload.avatar) {
throw new Error('no avatar')
}
const fileBox = FileBox.fromUrl(
payload.avatar,
`wechaty-contact-avatar-${payload.name}.jpg`,
)
return fileBox
}
示例2: messageSendFile
public async messageSendFile(
receiver : Receiver,
file : FileBox,
): Promise<void> {
log.verbose('PuppetPadchat', 'messageSend("%s", %s)', JSON.stringify(receiver), file)
// Send to the Room if there's a roomId
const id = receiver.roomId || receiver.contactId
if (!id) {
throw new Error('no id!')
}
if (!this.padchatManager) {
throw new Error('no padchat manager')
}
const type = file.mimeType || path.extname(file.name)
switch (type) {
case '.slk':
// 发送语音消息(微信silk格式语音)
await this.padchatManager.WXSendVoice(
id,
await file.toBase64(),
60,
)
break
default:
await this.padchatManager.WXSendImage(
id,
await file.toBase64(),
)
break
}
}