/* * Webhook Functions */ bool TelegramBot::setHttpServerWebhook(qint16 port, QString pathCert, QString pathPrivateKey, int maxConnections, TelegramPollMessageTypes messageTypes) { // try to acquire httpServer HttpServer* httpServer = 0; QSslCertificate cert; if(this->webHookWebServers.contains(port)) { // if existing webhook contains not the same privateKey, inform user and exit if(this->webHookWebServers.find(port).value()->isSamePrivateKey(pathPrivateKey)) { EXIT_FAILED("TelegramBot::setHttpServerWebhook - It's not possible to set multiple private keys for one webserver, webhook installation failed...") } httpServer = this->webHookWebServers.find(port).value(); // add new cert cert = httpServer->addCert(pathCert); if(cert.isNull()) { EXIT_FAILED("TelegramBot::setHttpServerWebhook - Cert file %s is invalid, webhook installation failed...", qPrintable(pathCert)) } if(cert.subjectInfo(QSslCertificate::CommonName).isEmpty()) { EXIT_FAILED("TelegramBot::setHttpServerWebhook - Cert don't contain a Common Name (CN), webhook installation failed..."); } } // if no webserver exist, create it else {