0

基本上,我正在尝试 IOT,我尝试了这个简单的项目,其中 esp32 cam 将在检测到运动时拍照并使用机器人将其发送到电报,我已经在电报上创建了机器人,一切都像令牌, 聊天 id 添加到代码中。我已经成功连接到我的 wifi 但由于某种原因它无法连接到电报,所有这些代码都是在 youtube 上为 ViralScience 复制的,下面是连接到电报的功能

String alerts2Telegram(String token, String chat_id) 
{
  const char* myDomain = "api.telegram.org";
  String getAll="", getBody = "";

  camera_fb_t * fb = NULL;
  fb = esp_camera_fb_get();  
  if(!fb) 
  {
    Serial.println("Camera capture failed");
    delay(1000);
    ESP.restart();
    return "Camera capture failed";
  }  

  WiFiClientSecure client_tcp;
  
  if (client_tcp.connect(myDomain, 443)) 
  {
    Serial.println("Connected to " + String(myDomain));
  }
  else {
    getBody = "Connection to telegram failed.";
    Serial.println("Connection to telegram failed.");
  }
  
  return getBody;
}

下面是草图循环

void loop()
{
 
  pinMode(gpioPIR, INPUT_PULLUP);
  int v = digitalRead(gpioPIR);
  Serial.println(v);
  if (v==1)
  {
    alerts2Telegram(token, chat_id);
    delay(10000); 
  }
  delay(1000);  
  
}

代码中是否有任何问题或者它不起作用,因为可能此代码已过时,因为教程本身的视频日期为 2020 年 6 月 7 日?

4

1 回答 1

0

尝试将 esp32 核心的版本更改为 v1.0.4 。如果您想使用 1.0.5 或更高版本,请修改您的代码,如下所示。

WiFiClientSecure client_tcp;
client_tcp.setInsecure();   //version 1.0.5 or above

请参考我的代码。

于 2021-07-17T11:46:56.400 回答