Seeking Guidance: Precise Node Placement to Hide Telegram Buttons in n8n Workflow

Subject: Optimizing Workflow for Blind Students: Accurate PDF Extraction and UI Management in Telegram
Hi everyone,
I am developing an educational project (Project Roland) dedicated to helping blind students. I use n8n to process PDF files via Gemini and return the results as Word (.doc) and HTML files through Telegram. I need your expert advice on two specific points to improve accessibility and reliability:

  1. Accurate PDF to Text Extraction:
    I need to extract text from PDFs as a ‘Mirror Copy’ (perfect replica) to be converted into Word documents. It is crucial that the text order is preserved and that Arabic characters are handled correctly without encoding issues.
  • Is the ‘Extract from File’ node the best for this ‘Copy-Paste’ quality?
  • Are there specific settings or external tools you recommend to ensure the Word output is identical to the PDF source?
  1. UI/UX for Blind Users (Telegram Buttons):
    To prevent confusion for screen reader users, I need to hide Inline Buttons immediately after they are clicked.
  • Where exactly should I place the ‘Edit Message Reply Markup’ node? Should it be the very first node after the ‘Callback Query’ in the Switch path?
  • What is the best way to handle ‘Answer Callback Query’ so the screen reader doesn’t get stuck in a ‘loading’ state?
    I’ve attached a screenshot of my current workflow showing the nodes and paths. Your support means a lot to this humanitarian project. Thank you!

Hi @abd2001

Great questions! Let me address each one based on what’s documented:

[details=“Is “Extract From File” the best for copy-paste quality?”]
Extract From File* is the only built-in PDF extractor documented in n8n, but it’s not specifically described as layout-perfect or Arabic-aware.

For high-fidelity extraction (especially with complex layouts or right-to-left languages like Arabic), the official recommendation is to integrate a specialized external PDF parser—like LlamaParse or similar APIs—using the HTTP Request node.

References:

Settings/tools for identical Word output?

Unfortunately, the current documentation doesn’t describe any PDF → Word pipeline or settings within n8n, so I can’t reliably recommend a documented way to get an “identical” Word file directly from n8n at this time.

You’d likely need to use an external service or API that specializes in PDF-to-Word conversion.

[details=“Where to place “Edit Message Reply Markup”?”]
The docs confirm you can remove keyboards via Reply Markup, but they don’t provide exact node ordering guidance after handling a callback.

References:

[details=“Best way to handle “Answer Callback Query” to avoid ‘loading’?”]
The documented guidance is that you should use Callback → Answer Query to respond to inline keyboard callbacks. However, there’s no additional detail in the docs about screen readers or managing loading states beyond that.

Reference:

Let me know if you need anything else! :blush:

Hi @abd2001 Just place the Edit Message Reply Markup node directly after handling the callback query Doing this makes sure to strip the inline keyboard just before sending the Answer Callback Query This prevents the button from lingering and stops it from saying “loading” and would help in smooth transition.