我可以通过ServiceM8 API 'message‘(http://developer.servicem8.com/docs/platform-services/message-services/)从ServiceM8帐户发送电子邮件,并读取最终的ServiceM8消息id。
但是,我想将该消息与ServiceM8中的特定作业联系起来,以便它在ServiceM8 web应用程序中作为电子邮件项目出现在该作业的日记中。(从ServiceM8网络应用程序内部发送的电子邮件与日记相关,并出现在日记中--我的问题是如何从API中进行此操作)。
最糟糕的情况是,我可以创建一个包含电子邮件文本的新的“note”,并将其添加到工作中,希望它能以便条的形式出现在web应用程序的日记中。
但我想检查一下,没有一个更容易的方式,因为发送电子邮件的结果,在那里已经有一个相关的消息-id在ServiceM8中可用。
谢谢
发布于 2016-10-16 10:15:31
使用消息传递服务API,无法完成。使用web,您就可以做到这一点。
这里需要一个授权代码,这是特定于您的帐户和这个功能,您只需要检索它一次,然后您可以将该特定的URL集成到您的代码中。它包含在ClientSidePlatform_PerSessionSetup URL中。
下面是一个脚本,它将获取特定于您登录的电子邮件URL:
语法: ./getsm8emailurl.sh "email@address.com" "password"
#!/usr/bin/env bash
#getsm8emailurl.sh
#Create Basic auth
user="$1"
pass="$2"
pass="$(echo -n "${pass}" | md5sum | cut -f1 -d' ')"
auth="$(echo -n "${user}:${pass}" | base64)"
#Get Account specific e-mail url
email_url="https://go.servicem8.com/$(curl --compressed -s -L "https://go.servicem8.com/$(curl --compressed -s -L "https://go.servicem8.com/" -H "Authorization: Basic $auth" | grep -o 'ClientSidePlatform_PerSessionSetup.[^"]*' | grep -v "s_boolFailover")" -H "Authorization: Basic $auth" | grep -o "PluginEmailClient_SendEmail.[^']*")"
#Output base e-mail URL
echo "$email_url"一旦您拥有了电子邮件url (将以https://go.servicem8.com/PluginEmailClient_SendEmail开头并以s_auth代码结尾),您可以像使用任何其他rest端点一样使用它。
必需的头值:
必需的职位配对:
"guid-to-cc-subject-msg-job_id-attachedFiles-attachedContacts-strRegardingObjectUUID-strRegardingObject-boolAllowDirectReply" (他们必须保持原样)可选邮政参数:
演示
#!/usr/bin/env bash
#sendemail.sh
#demo here using random auth codes and uuids
curl --compressed -s "https://go.servicem8.com/PluginEmailClient_SendEmail" \
-H "Authorization: Basic dGVzdHVzZXJAdGVzdGRvbWFpbi5jb206dGVzdHBhc3M=" \
-d s_form_values=guid-to-cc-subject-msg-job_id-attachedFiles-attachedContacts-strRegardingObjectUUID-strRegardingObject-boolAllowDirectReply \
-d s_auth="6akj209db12bikbs01hbobi3r0fws7j2" \
-d boolAllowDirectReply=true \
-d strRegardingObject=job \
-d strRegardingObjectUUID="512b3b2a-007e-431b-be23-4bd812f2aeaf" \
-d to="test@testdomain.com" \
-d subject="Job Diary E-mail" \
-d msg="hello"编辑/更新/免责声明:这些信息是为了方便和高效--备忘录、快速任务、通知、更新等等。由于它没有文档化,所以不能依赖于关键的业务操作,而且由于它不像浏览器那样处理JS,如果服务的内部工作发生变化,它可能停止工作。
https://stackoverflow.com/questions/40044340
复制相似问题