summaryrefslogtreecommitdiff
path: root/Omni/Agent
diff options
context:
space:
mode:
Diffstat (limited to 'Omni/Agent')
-rw-r--r--Omni/Agent/Telegram.hs6
1 files changed, 4 insertions, 2 deletions
diff --git a/Omni/Agent/Telegram.hs b/Omni/Agent/Telegram.hs
index 8e4591e..e089945 100644
--- a/Omni/Agent/Telegram.hs
+++ b/Omni/Agent/Telegram.hs
@@ -49,6 +49,7 @@ import Data.Aeson ((.!=), (.:), (.:?), (.=))
import qualified Data.Aeson as Aeson
import qualified Data.Aeson.KeyMap as KeyMap
import qualified Data.Text as Text
+import qualified Network.HTTP.Client as HTTPClient
import qualified Network.HTTP.Simple as HTTP
import qualified Omni.Agent.Engine as Engine
import qualified Omni.Agent.Memory as Memory
@@ -242,10 +243,12 @@ getUpdates cfg offset = do
"timeout" .= tgPollingTimeout cfg,
"allowed_updates" .= (["message"] :: [Text])
]
+ timeoutMicros = (tgPollingTimeout cfg + 10) * 1000000
req =
HTTP.setRequestMethod "POST"
<| HTTP.setRequestHeader "Content-Type" ["application/json"]
<| HTTP.setRequestBodyLBS (Aeson.encode body)
+ <| HTTP.setRequestResponseTimeout (HTTPClient.responseTimeoutMicro timeoutMicros)
<| req0
result <- try (HTTP.httpLBS req)
case result of
@@ -277,8 +280,7 @@ sendMessage cfg chatId text = do
let body =
Aeson.object
[ "chat_id" .= chatId,
- "text" .= text,
- "parse_mode" .= ("Markdown" :: Text)
+ "text" .= text
]
req =
HTTP.setRequestMethod "POST"