【问题标题】:Creating and sending vCard files via MMS通过彩信创建和发送 vCard 文件
【发布时间】:2018-02-11 18:55:07
【问题描述】:

我正在尝试使用 Twilio 的 API 和 vobject 发送 vCard 文件(允许您在移动设备上保存联系人)。

这是我的代码:

import vobject
import requests
from twilio.rest import Client

account_sid = 'MY_SID_HIDDEN'
auth_token = 'AUTH_TOKEN_HIDDEN'

j = vobject.vCard()
j.add('n')
j.n.value = vobject.vcard.Name(family='Harris', given='Jeffrey')
j.add('fn')
j.fn.value = 'Jeffrey Harris'
j.add('email')
j.email.value = 'jeffrey@osafoundation.org'
j.email.type_param = 'Internet'

client = Client(account_sid, auth_token)

client.api.account.messages.create(
    to="NUMBER_HIDDEN",
    from_="NUMBER_HIDDEN",
    body=j
)

当我的设备收到消息时,它看起来像这样:

<VCARD| [<EMAIL{'TYPE': ['Internet']}jeffrey@osafoundation.org>, <FN{}Jeffrey Harris>, <N{} Jeffrey  Harris >]>

为什么会这样?

【问题讨论】:

    标签: python twilio vcf-vcard vobject


    【解决方案1】:

    我了解您想要做什么,但有几个问题。

    1. Vcards 是文件;您已将标记的文本放入文本字​​段(正文)中。
    2. 为了使用 API 附加文件,您指向它指向一个 Twilio 服务器可以访问的 URL,并确保您在 API 中正确声明了您的 mime 类型编码以及存储卡的服务器上。

    注意:我不确定是否不再需要 mime 类型,因为他们不会在此示例中将其用于附加图片(https://www.twilio.com/docs/api/messaging/send-messages#send-a-message-with-an-image-url;将语言更改为 python )。

    您可以使用 mediaUrl 附加文件(电子名片)。
    前// mediaUrl=https://qrstuff.com/vcard.download/dec91a6d6/yo_yo_ma_vCard.vcf

    【讨论】:

    • 所以你是说我的方法不可行?如果我以电子邮件而不是文本的形式发送电子名片会怎样?
    • 您的选择是动态创建 vcard 并将其即时发布到网络上。或者只提供静态(预制)卡片(ex// qrstuff.com/vcard.download/dec91a6d6/yo_yo_ma_vCard.vcf)对于这两个选项,您可以使用 mediaUrl 附加它。请参阅更新帖子中的示例,因为我无法在评论中正确显示
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 2014-09-09
    相关资源
    最近更新 更多