php - 如何获取从 gmail API 发送的电子邮件
问题描述
我有一个脚本可以将收到的电子邮件发送到我的 gmail,但现在我也想获得通过电子邮件发送的电子邮件。
这是我必须获取传入电子邮件的代码
请让我知道外发电子邮件需要什么
目前,此代码通过 console.google.com 上的 pub sub 运行
$ch = curl_init('https://www.googleapis.com/gmail/v1/users/me/messages?labelIds=Label_56&maxResults=10');
curl_setopt_array($ch, array(
CURLOPT_POST => false,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer '. $tokenval,
'Content-Type: application/json',
),
));
// execute request and get response
$result = curl_exec($ch);
$allmessages = json_decode($result);
$allmessage = $allmessages->messages;
for($i=0;$i<count( $allmessage);$i++)
{
//echo $allmessage[$i]->id;
$checkoldmsgid = $this->Customer_m->getCount('messages',array('massageid'=>$allmessage[$i]->id ));
if( $checkoldmsgid ==0)
{
$ch = curl_init('https://www.googleapis.com/gmail/v1/users/me/messages/'.$allmessage[$i]->id);
curl_setopt_array($ch, array(
CURLOPT_POST => false,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer '. $tokenval,
'Content-Type: application/json'
),
));
// execute request and get response
$resultm = curl_exec($ch);
$msgval = json_decode($resultm);
$sendernum =explode('@',$msgval->payload->headers[19]->value);
$recivernum =explode('@',$msgval->payload->headers[0]->value);
$createdat = date('Y-m-d H:i:s',strtotime($msgval->payload->headers[18]->value));
$massage = $msgval->snippet;
$single_message = $service->users_messages->get("me", $allmessage[$i]->id);
$payload = $single_message->getPayload();
$body = $payload->getBody();
$FOUND_BODY = $this->decodeBody($body['data']);
解决方案
您可能希望在通话中使用SENT
系统标签(而不是Label_56
一个)curl_init()
:
发送
自动应用于使用drafts.send 或messages.send发送的消息,使用messages.insert和From标头中的用户电子邮件插入的消息,或由用户通过 Web 界面发送的消息。
推荐阅读
- html - Dialogflow 中的 HTML 标签 || GCP
- git - 开始一个项目并留下 git 历史
- google-cloud-platform - 如何在同一个谷歌云项目中拆分两个资源的访问权限
- php - Windows 与 Linux PHP PHP_EOL - php 数据不同
- protocol-buffers - 在 azure databricks 笔记本中实现 protobuf 消息
- javascript - jqueryUI _trigger() 没有触发我可以在元素上看到的事件
- swift - 如何通过自定义运算符将发布者输出转发到下游订阅者?
- django - 如何确保模型仅在另一个已经存在时才创建一个实例
- python - 如何在MDToolbar下做一个Screen(Screen, MDToolbar and MDNavigationDrawer on Layout)
- python - 如何用python测试多个返回值?