在 Thunderbird 扩展中获取邮件发件人

2023-12-25

我正在开发一个非常简单的 Thunderbird 扩展,它应该在发送邮件时提醒发件人的姓名以及收件人的姓名。问题是下面代码片段中的 gMsgCompose.compFields.from 字段为空(.to 字段按预期工作),它处理“compose-send-message”事件。我在这里缺少什么?

function send_event_handler( evt ) {
var msgcomposeWindow = document.getElementById( "msgcomposeWindow" );
var msg_type = msgcomposeWindow.getAttribute( "msgtype" );

// do not continue unless this is an actual send event
if( !(msg_type == nsIMsgCompDeliverMode.Now || msg_type == nsIMsgCompDeliverMode.Later) )
  return;

var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService);
promptService.alert(window, "From", gMsgCompose.compFields.from);
promptService.alert(window, "To", gMsgCompose.compFields.to);
}

window.addEventListener( "compose-send-message", send_event_handler, true );

您可以通过 msgIdentity 小部件获取发送身份:

var identityWidget = document.getElementById('msgIdentity');
var fromIdentityKey= self.identityWidget.value;

然后,使用账户管理器查找身份信息:

var acctMgr = Components.classes["@mozilla.org/messenger/account-manager;1"]
                      .getService(Components.interfaces.nsIMsgAccountManager);
var accounts = acctMgr.accounts;
for (var i = 0; i < accounts.Count(); i++) {
  var account = accounts.QueryElementAt(i, Components.interfaces.nsIMsgAccount);

  var accountIdentities = account.identities;

  for(var identCount = 0; identCount < accountIdentities.Count(); identCount++) {
    var identity = accountIdentities.QueryElementAt(identCount,
                                                 Components.interfaces.nsIMsgIdentity);

    if(identity.key == fromIdentityKey) {
       // Identity found
       alert(identity.email);
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Thunderbird 扩展中获取邮件发件人 的相关文章

  • 为什么smtpclient发送的邮件没有出现在已发送项目中

    我已经实现了一个通过 Net SmtpClient 发送电子邮件的服务器 邮件发送代码如下 private static MailMessage SendMail string to string subject string body M
  • 发送python电子邮件时添加excel文件附件

    使用 python 发送电子邮件时如何添加文档附件 我收到要发送的电子邮件 请忽略 我正在循环发送电子邮件以每 5 秒发送一次 仅用于测试目的 我希望它每 30 分钟发送一次 只需将 5 更改为 1800 到目前为止 这是我的代码 如何附加
  • 邮件附件媒体类型错误 Gmail API

    我正在尝试通过 Javascript 客户端中的 Gmail API 发送带有附加 jpeg 文件的消息 到目前为止我写的代码如下 ajax type POST url https www googleapis com upload gma
  • PHP - 发送带有附件的电子邮件不显示消息内容

    尝试创建一个脚本 我可以在其中发送带有附件的电子邮件 一切正常 除了当我不在电子邮件中添加文件时 我仍然可以看到带有 0B 且没有名称的附件 if isset POST my send email to POST my email to r
  • 海报风格的电子邮件验证

    我正在考虑创建一个类似于Posterous的服务 用户可以在其中发布到固定地址 例如 电子邮件受保护 cdn cgi l email protection然后帖子的身份验证将基于发件人地址和标头签名的某种组合 Posterous 似乎正在做
  • SMTPAuthenticationError: (535, b'5.7.8 用户名和密码在 Django 生产中不被接受?

    我在 Heroku 上部署了一个 Django 应用程序 在其中一节中 我使用 SMTP Gmail 设置向用户发送电子邮件 当我在本地运行项目时 电子邮件发送成功 但在 Heroku 上部署的项目上却发送失败 我在 Stackoverfl
  • 如何使用 applescript 打开电子邮件?

    我正在编写一个小苹果脚本 它检索查看器中所有 未读 消息并循环它们 我有两个目标要完成 我需要获取每封邮件的主题并执行正则表达式以查看它是否适合步骤 2 例如 获取主题为 的电子邮件 我需要在单独的窗口中打开每条消息 4 秒后 我需要关闭该
  • 如何在时事通讯中发送图像?

    谁能告诉我如何将图像作为时事通讯的主体部分发送 我如何从后端添加任何图像 以便当我向订阅者发送新闻通讯时 我想要显示的图像作为邮件的主体部分 实际上我想说的是 我有一个可以输入文本的表单 并且该文本在时事通讯中效果很好 现在我也想在表单中添
  • T-SQL:检查电子邮件格式

    我有这样的场景 我需要物理数据库中的数据完整性 例如 我有一个变量 email address VARCHAR 200 我想检查一下值是否为 email address是电子邮件格式 有人知道如何检查 T SQL 中的格式吗 非常感谢 我使
  • 如何防止 Lotus Notes 用户转发或复制通过 System.Net.Mail 发送的邮件?

    我想使用 SMTP 客户端 uiing microsft net 以 C 作为编程语言发送电子邮件 但是对于通过SMTP客户端发送的电子邮件 我们是否可以添加 禁止转发 或 禁止复制 等安全功能 我不希望电子邮件的收件人转发或复制电子邮件的
  • 使用SimpleMailMessage类发送邮件时如何使java字符串着色

    我正在使用 java 中的 SimpleMailMessage 类发送邮件 我将 spring 与 hibernate 结合使用 我想在发送邮件时将特定字符串设置为彩色 Code String emailBody Dear username
  • 使用 Google App Engine 发送时的 Gmail 发送配额

    Gmail 规定每天 500 个收件人发送电子邮件的配额 如果您通过他们的 POP IMAP 界面发送 则配额仅为每天 100 个收件人 使用 Google 应用引擎在 Gmail 帐户上发送电子邮件的发送配额是多少 它会遵循 POP IM
  • Wordpress - 联系表格 7 未发送到某些电子邮件

    我将 Contact Form 7 与 WordPress 结合使用 但遇到了电子邮件兼容性问题 我已设置表格并通过电子邮件发送至 电子邮件受保护 cdn cgi l email protection domain ca 是托管该网站的网站
  • 关于 .NET 组件访问电子邮件收件箱的建议 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我被要求用 C 编写一个 Windows 服务来定期监视电子邮件收件箱并将收到的任何消息的详细信息插入数据库表中 我的本能是通过 POP3
  • 编辑表单以清理/验证电话号码

    我对 PHP 的经验非常有限 我真的希望有人可以帮助我 我想要做的是清理 验证输入的电话号码 以便只允许使用数字 我想我需要使用FILTER SANITIZE NUMBER INT但我不确定在哪里或如何使用它 这是我的代码
  • 在 Python 中将主题标头添加到 server.sendmail()

    我正在编写一个 python 脚本来从终端发送电子邮件 在我目前发送的邮件中 它没有主题 我们如何为此电子邮件添加主题 我当前的代码 import smtplib msg From email protected cdn cgi l ema
  • 如何发送电子邮件而不进入垃圾邮件

    MailAddress mailFrom new MailAddress email protected cdn cgi l email protection MailAddress mailTo new MailAddress email
  • SMTP 配置在生产中不起作用

    我正在尝试在提交表单时发送电子邮件 我正在使用 PHPMailer 使用以下配置发送邮件 mail new PHPMailer mail gt isSMTP mail gt Host mail example in mail gt Port
  • 向 Thunderbird 添加多个附件(从命令行)

    我尝试通过命令行创建带有多个附件的新消息 但这不起作用 thunderbird compose attachment etc mtab attachment etc fstab 仅附加第一个文件 第二个失踪了 上面的命令行有什么问题 PS
  • 如何禁用 iPhone 邮件应用程序中的电话号码链接?

    我的公司正在发送数字电子邮件收据 但遇到了 iPhone Mail 检测数字数据并将其自动链接为电话号码的问题 我已经看到元标记应该可以解决 iPhone 上的 Mobil Safari 中的问题 但该技巧似乎不适用于 Mail 有谁知道如

随机推荐

  • 如何检查和调整浏览器中的 :before 和 :after 伪元素?

    我使用 after 伪元素创建了一些相当复杂的 DOM 元素 并且我希望能够在 Chrome Inspector 或 Firebug 或等效工具中检查和调整它们 尽管这个功能被提到这篇 WebKit Safari 博客文章 http www
  • Linq to SQL DataContext:如何加载数据?

    我对 Linq to SQL 完全陌生 我正在创建一个与数据库密切配合的 Web 应用程序 我正在寻找最快且连接时间高效的模型 并相信 Linq to SQL 就是这样 我正在使用 C Net4 Visual Studio 2010 为了简
  • jQuery UI 对话框未位于屏幕中央

    我有一个 jQuery 对话框 该对话框位于屏幕中间 然而 它在垂直方向上似乎稍微偏离中心 这是代码 add box dialog autoOpen true width 300 modal true resizable false bgi
  • 如何检查对象中的数组是否全部为空?

    所以我需要传入一个对象 其中每个属性都是数组 该函数将使用每个数组中保存的信息 但我想通过检查每个数组是否为空 空来检查整个对象是否为空 不仅仅是没有属性 到目前为止我所拥有的 function isUnPopulatedObject ob
  • 动画:计时器与空闲

    有一个类似的线程 https stackoverflow com questions 622604 best approach for game animation其他地方 但它专注于游戏编程 我发现它与带有一些 额外糖分 的常规 GUI
  • Nuget 包已安装但引用未解析

    我有一个多项目解决方案 在多个项目中安装了 Prism Nuget 包 然后 我尝试使用 Nuget Package Manager UI 将 Prism Mef 扩展包添加到其中一个项目 我已经将其添加到其他项目之一 我第一次尝试添加软件
  • ng-switch-when 与 ng-repeat

    我的 HTML 代码是 tr td span Ordering Mode span onlineCredentials mode br span Intermedtiary Group span onlineCredentials name
  • 如何检查 CLLocationCooperative2D 是否在四个 CLLocationCooperative2D 正方形内?在 Objective C 中使用 Google 地图

    我想测试 CLLocationCooperative2D 是否位于由其他四个 CLLocationCooperative2D 创建的 Square 内 我有一个这样的结构 typedef struct CLLocationCoordinat
  • 如何更改请求的标头?

    是否可以更改标题Request https developer mozilla org en US docs Web API Request接收到的对象fetch https developer mozilla org en US docs
  • 如何在 Ruby 中生成 n 个唯一随机数的列表?

    这是我到目前为止所拥有的 myArray map rand max 然而 显然有时列表中的数字并不唯一 如何确保我的列表仅包含唯一的数字 而不必创建一个更大的列表 然后我只需从中选择 n 个唯一的数字 Edit 我真的很希望看到这个没有循环
  • 内部测试时 ITSAppUsesNonExemptEncryption 导出合规性?

    我在选择内部测试构建时收到此消息 它说有关设置ITSApp 使用非豁免加密在info plist中是什么意思 有必要吗 基本上
  • 无法查看 plunker 结果

    突然 当我从过去 4 天开始尝试运行时 我的一些笨蛋出现了以下错误 statusCode 404 error Not Found 请参考我的一个笨蛋http plnkr co edit wWJx3zU3Sm1cN9ZCtvoh p prev
  • 更新在 dynamodb 中添加属性的项目

    dynamodb 中不能动态添加属性吗 当我尝试时 我得到了这个错误 提供的关键元素与架构不匹配 设想 id 123 imageName elephant jpg 我想向上述数据添加一个属性 imagePath path to image
  • 如何记录所有传入数据包

    我尝试使用预路由规则将传入数据包重定向到内部虚拟 IP 地址 如何在传入数据包被重定向之前记录该数据包 iptables t nat A PREROUTING d 46 X XX XX s 78 XX XX XX p tcp dport 8
  • vscode launch.json 调试并打开特定url

    给定以下自动生成的 Visual Studio Code launch json 配置 我想启动浏览器localhost 5000 swagger当我调试时 但我尝试了六种不同的方法 但没有任何效果 它只是打开到localhost 5000
  • 从 MPICH 切换到 OpenMPI

    我的 Ubuntu 20 04 中有 mpich 和 openmpi dpkg l grep mpi grep lib ii libmpich dev amd64 3 3 2 2build1 amd64 Development files
  • 如何在Unity顶部显示ui元素

    如何在其他元素之上显示我的 ui 元素 http prntscr com brjccg http prntscr com brjccg您可以看到面板的右侧 但左侧位于地图对象下方 如何解决我想看到它的两面 这是它当前拥有的组件http pr
  • dp-sp与PX的关系

    我不是问 dp sp 和 px 之间有什么区别 我正在设计一个基于谷歌新材料设计的网站 所有尺寸均以 dp 用于网格 和 sp 用于文本 为单位 我的问题是它们如何转换为像素 我设计网站已有 4 年多了 所有尺寸 网格和字体 均以像素为单位
  • Git 无法从 ownCloud 的 webdav 界面克隆存储库

    我在自己的云上有一些个人 git 存储库 我可以通过访问 ownClouds webdav url 从 2 台 ubuntu 机器和一台 Windows PC 克隆它 http myserver a remote php webdav re
  • 在 Thunderbird 扩展中获取邮件发件人

    我正在开发一个非常简单的 Thunderbird 扩展 它应该在发送邮件时提醒发件人的姓名以及收件人的姓名 问题是下面代码片段中的 gMsgCompose compFields from 字段为空 to 字段按预期工作 它处理 compos