rasa-pro 3.14.0.dev20250825__py3-none-any.whl → 3.14.0.dev20250922__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of rasa-pro might be problematic. Click here for more details.

Files changed (351) hide show
  1. rasa/builder/README.md +120 -0
  2. rasa/builder/__init__.py +0 -0
  3. rasa/builder/auth.py +176 -0
  4. rasa/builder/config.py +92 -0
  5. rasa/builder/copilot/__init__.py +0 -0
  6. rasa/builder/copilot/constants.py +31 -0
  7. rasa/builder/copilot/copilot.py +450 -0
  8. rasa/builder/copilot/copilot_response_handler.py +522 -0
  9. rasa/builder/copilot/copilot_templated_message_provider.py +58 -0
  10. rasa/builder/copilot/exceptions.py +32 -0
  11. rasa/builder/copilot/models.py +500 -0
  12. rasa/builder/copilot/prompts/__init__.py +0 -0
  13. rasa/builder/copilot/prompts/copilot_system_prompt.jinja2 +766 -0
  14. rasa/builder/copilot/prompts/latest_user_message_context_prompt.jinja2 +61 -0
  15. rasa/builder/copilot/signing.py +305 -0
  16. rasa/builder/copilot/telemetry.py +226 -0
  17. rasa/builder/copilot/templated_messages/__init__.py +0 -0
  18. rasa/builder/copilot/templated_messages/copilot_internal_messages_templates.yml +16 -0
  19. rasa/builder/copilot/templated_messages/copilot_templated_responses.yml +38 -0
  20. rasa/builder/document_retrieval/__init__.py +0 -0
  21. rasa/builder/document_retrieval/constants.py +15 -0
  22. rasa/builder/document_retrieval/inkeep-rag-response-schema.json +64 -0
  23. rasa/builder/document_retrieval/inkeep_document_retrieval.py +238 -0
  24. rasa/builder/document_retrieval/models.py +62 -0
  25. rasa/builder/download.py +140 -0
  26. rasa/builder/exceptions.py +91 -0
  27. rasa/builder/guardrails/__init__.py +1 -0
  28. rasa/builder/guardrails/constants.py +9 -0
  29. rasa/builder/guardrails/exceptions.py +4 -0
  30. rasa/builder/guardrails/lakera.py +206 -0
  31. rasa/builder/guardrails/models.py +231 -0
  32. rasa/builder/guardrails/store.py +238 -0
  33. rasa/builder/guardrails/utils.py +328 -0
  34. rasa/builder/job_manager.py +87 -0
  35. rasa/builder/jobs.py +282 -0
  36. rasa/builder/llm_service.py +246 -0
  37. rasa/builder/logging_utils.py +265 -0
  38. rasa/builder/main.py +234 -0
  39. rasa/builder/models.py +216 -0
  40. rasa/builder/project_generator.py +458 -0
  41. rasa/builder/project_info.py +72 -0
  42. rasa/builder/scrape_rasa_docs.py +97 -0
  43. rasa/builder/service.py +1350 -0
  44. rasa/builder/shared/tracker_context.py +212 -0
  45. rasa/builder/skill_to_bot_prompt.jinja2 +164 -0
  46. rasa/builder/template_cache.py +69 -0
  47. rasa/builder/training_service.py +194 -0
  48. rasa/builder/validation_service.py +97 -0
  49. rasa/cli/project_templates/basic/README.md +23 -0
  50. rasa/cli/project_templates/basic/actions/__init__ +0 -0
  51. rasa/cli/project_templates/basic/actions/action_human_handoff.py +40 -0
  52. rasa/cli/project_templates/basic/actions/actions.md +10 -0
  53. rasa/cli/project_templates/basic/config.yml +29 -0
  54. rasa/cli/project_templates/basic/credentials.yml +33 -0
  55. rasa/cli/project_templates/basic/data/data.md +8 -0
  56. rasa/cli/project_templates/basic/data/general/feedback.yml +21 -0
  57. rasa/cli/project_templates/basic/data/general/goodbye.yml +6 -0
  58. rasa/cli/project_templates/basic/data/general/hello.yml +6 -0
  59. rasa/cli/project_templates/basic/data/general/help.yml +6 -0
  60. rasa/cli/project_templates/basic/data/general/human_handoff.yml +16 -0
  61. rasa/cli/project_templates/basic/data/general/show_faqs.yml +6 -0
  62. rasa/cli/project_templates/basic/data/system/patterns/pattern_cannot_handle.yml +7 -0
  63. rasa/cli/project_templates/basic/data/system/patterns/pattern_completed.yml +7 -0
  64. rasa/cli/project_templates/basic/data/system/patterns/pattern_correction.yml +7 -0
  65. rasa/cli/project_templates/basic/data/system/patterns/pattern_search.yml +8 -0
  66. rasa/cli/project_templates/basic/data/system/patterns/pattern_session_start.yml +8 -0
  67. rasa/cli/project_templates/basic/docs/docs.md +5 -0
  68. rasa/cli/project_templates/basic/docs/template.txt +28 -0
  69. rasa/cli/project_templates/basic/domain/domain.md +11 -0
  70. rasa/cli/project_templates/basic/domain/general/feedback.yml +25 -0
  71. rasa/cli/project_templates/basic/domain/general/goodbye.yml +9 -0
  72. rasa/cli/project_templates/basic/domain/general/hello.yml +7 -0
  73. rasa/cli/project_templates/basic/domain/general/help.yml +21 -0
  74. rasa/cli/project_templates/basic/domain/general/human_handoff.yml +32 -0
  75. rasa/cli/project_templates/basic/domain/general/show_faqs.yml +14 -0
  76. rasa/cli/project_templates/basic/domain/system/patterns/pattern_cannot_handle.yml +5 -0
  77. rasa/cli/project_templates/basic/domain/system/patterns/pattern_session_start.yml +19 -0
  78. rasa/cli/project_templates/basic/endpoints.yml +67 -0
  79. rasa/cli/project_templates/basic/prompts/rephraser_demo_personality_prompt.jinja2 +38 -0
  80. rasa/cli/project_templates/default/config.yml +4 -0
  81. rasa/cli/project_templates/default/endpoints.yml +4 -0
  82. rasa/cli/project_templates/finance/README.md +26 -0
  83. rasa/cli/project_templates/finance/actions/__init__.py +0 -0
  84. rasa/cli/project_templates/finance/actions/accounts/__init__.py +0 -0
  85. rasa/cli/project_templates/finance/actions/accounts/check_balance.py +18 -0
  86. rasa/cli/project_templates/finance/actions/actions.md +15 -0
  87. rasa/cli/project_templates/finance/actions/cards/__init__.py +0 -0
  88. rasa/cli/project_templates/finance/actions/cards/check_that_card_exists.py +21 -0
  89. rasa/cli/project_templates/finance/actions/cards/list_cards.py +22 -0
  90. rasa/cli/project_templates/finance/actions/contacts/__init__.py +0 -0
  91. rasa/cli/project_templates/finance/actions/contacts/add_contact.py +30 -0
  92. rasa/cli/project_templates/finance/actions/contacts/list_contacts.py +22 -0
  93. rasa/cli/project_templates/finance/actions/contacts/remove_contact.py +35 -0
  94. rasa/cli/project_templates/finance/actions/db.py +117 -0
  95. rasa/cli/project_templates/finance/actions/general/__init__.py +0 -0
  96. rasa/cli/project_templates/finance/actions/general/action_human_handoff.py +49 -0
  97. rasa/cli/project_templates/finance/actions/transfers/__init__.py +0 -0
  98. rasa/cli/project_templates/finance/actions/transfers/check_transfer_funds.py +27 -0
  99. rasa/cli/project_templates/finance/actions/transfers/check_transfer_limit.py +36 -0
  100. rasa/cli/project_templates/finance/actions/transfers/execute_recurrent_payment.py +20 -0
  101. rasa/cli/project_templates/finance/actions/transfers/execute_transfer.py +45 -0
  102. rasa/cli/project_templates/finance/actions/transfers/list_transactions.py +32 -0
  103. rasa/cli/project_templates/finance/config.yml +29 -0
  104. rasa/cli/project_templates/finance/credentials.yml +33 -0
  105. rasa/cli/project_templates/finance/data/accounts/check_balance.yml +9 -0
  106. rasa/cli/project_templates/finance/data/accounts/download_statements.yml +26 -0
  107. rasa/cli/project_templates/finance/data/bills/bill_pay_reminder.yml +25 -0
  108. rasa/cli/project_templates/finance/data/cards/activate_card.yml +35 -0
  109. rasa/cli/project_templates/finance/data/cards/block_card.yml +45 -0
  110. rasa/cli/project_templates/finance/data/cards/list_cards.yml +14 -0
  111. rasa/cli/project_templates/finance/data/cards/replace_card.yml +16 -0
  112. rasa/cli/project_templates/finance/data/cards/replace_eligible_card.yml +29 -0
  113. rasa/cli/project_templates/finance/data/contacts/add_contact.yml +33 -0
  114. rasa/cli/project_templates/finance/data/contacts/list_contacts.yml +14 -0
  115. rasa/cli/project_templates/finance/data/contacts/remove_contact.yml +31 -0
  116. rasa/cli/project_templates/finance/data/data.md +14 -0
  117. rasa/cli/project_templates/finance/data/general/bot_challenge.yml +6 -0
  118. rasa/cli/project_templates/finance/data/general/feedback.yml +20 -0
  119. rasa/cli/project_templates/finance/data/general/goodbye.yml +6 -0
  120. rasa/cli/project_templates/finance/data/general/hello.yml +6 -0
  121. rasa/cli/project_templates/finance/data/general/help.yml +9 -0
  122. rasa/cli/project_templates/finance/data/general/human_handoff.yml +16 -0
  123. rasa/cli/project_templates/finance/data/general/welcome.yml +9 -0
  124. rasa/cli/project_templates/finance/data/system/patterns/pattern_completed.yml +7 -0
  125. rasa/cli/project_templates/finance/data/system/patterns/pattern_correction.yml +7 -0
  126. rasa/cli/project_templates/finance/data/system/patterns/pattern_search.yml +8 -0
  127. rasa/cli/project_templates/finance/data/system/patterns/pattern_session_start.yml +8 -0
  128. rasa/cli/project_templates/finance/data/transfers/check_transfer_limit.yml +18 -0
  129. rasa/cli/project_templates/finance/data/transfers/list_transactions.yml +46 -0
  130. rasa/cli/project_templates/finance/data/transfers/move_money_between_accounts.yml +51 -0
  131. rasa/cli/project_templates/finance/data/transfers/transfer_money.yml +34 -0
  132. rasa/cli/project_templates/finance/data/transfers/transfer_money_to_a_third_party.yml +175 -0
  133. rasa/cli/project_templates/finance/db/cards.json +18 -0
  134. rasa/cli/project_templates/finance/db/contacts.json +10 -0
  135. rasa/cli/project_templates/finance/db/my_account.json +6 -0
  136. rasa/cli/project_templates/finance/db/transactions.json +22 -0
  137. rasa/cli/project_templates/finance/docs/docs.md +8 -0
  138. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/budgeting_analytics.txt +22 -0
  139. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/multi_currency_accounts.txt +19 -0
  140. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/premium_benefits.txt +19 -0
  141. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/contactless_limits.txt +16 -0
  142. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/freeze_unfreeze_card.txt +16 -0
  143. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/lost_stolen_card.txt +19 -0
  144. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/money_transfers/instant_payments.txt +19 -0
  145. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/money_transfers/international_transfers.txt +19 -0
  146. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/security_fraud/fraud_protection.txt +22 -0
  147. rasa/cli/project_templates/finance/docs/fenlo_banking_faq/security_fraud/secure_payments.txt +22 -0
  148. rasa/cli/project_templates/finance/domain/accounts/check_balance.yml +15 -0
  149. rasa/cli/project_templates/finance/domain/accounts/download_statements.yml +40 -0
  150. rasa/cli/project_templates/finance/domain/bills/bill_pay_reminder.yml +49 -0
  151. rasa/cli/project_templates/finance/domain/cards/activate_card.yml +24 -0
  152. rasa/cli/project_templates/finance/domain/cards/block_card.yml +44 -0
  153. rasa/cli/project_templates/finance/domain/cards/list_cards.yml +16 -0
  154. rasa/cli/project_templates/finance/domain/cards/replace_card.yml +43 -0
  155. rasa/cli/project_templates/finance/domain/cards/shared.yml +15 -0
  156. rasa/cli/project_templates/finance/domain/contacts/add_contact.yml +37 -0
  157. rasa/cli/project_templates/finance/domain/contacts/list_contacts.yml +16 -0
  158. rasa/cli/project_templates/finance/domain/contacts/remove_contact.yml +32 -0
  159. rasa/cli/project_templates/finance/domain/domain.md +18 -0
  160. rasa/cli/project_templates/finance/domain/general/_shared.yml +39 -0
  161. rasa/cli/project_templates/finance/domain/general/bot_challenge.yml +4 -0
  162. rasa/cli/project_templates/finance/domain/general/cannot_handle.yml +8 -0
  163. rasa/cli/project_templates/finance/domain/general/feedback.yml +25 -0
  164. rasa/cli/project_templates/finance/domain/general/goodbye.yml +7 -0
  165. rasa/cli/project_templates/finance/domain/general/human_handoff.yml +31 -0
  166. rasa/cli/project_templates/finance/domain/general/welcome.yml +39 -0
  167. rasa/cli/project_templates/finance/domain/transfers/check_transfer_limit.yml +32 -0
  168. rasa/cli/project_templates/finance/domain/transfers/list_transactions.yml +44 -0
  169. rasa/cli/project_templates/finance/domain/transfers/shared.yml +17 -0
  170. rasa/cli/project_templates/finance/domain/transfers/transfer_money.yml +221 -0
  171. rasa/cli/project_templates/finance/endpoints.yml +67 -0
  172. rasa/cli/project_templates/finance/prompts/rephraser_demo_personality_prompt.jinja2 +38 -0
  173. rasa/cli/project_templates/finance/tests/e2e_test_cases/accounts/check_balance.yml +9 -0
  174. rasa/cli/project_templates/finance/tests/e2e_test_cases/accounts/download_statements.yml +43 -0
  175. rasa/cli/project_templates/finance/tests/e2e_test_cases/cards/block_card.yml +55 -0
  176. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/bot_challenge.yml +8 -0
  177. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/feedback.yml +46 -0
  178. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/goodbye.yml +9 -0
  179. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/hello.yml +8 -0
  180. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/human_handoff.yml +35 -0
  181. rasa/cli/project_templates/finance/tests/e2e_test_cases/general/patterns.yml +22 -0
  182. rasa/cli/project_templates/finance/tests/e2e_test_cases/transfers/transfer_money.yml +56 -0
  183. rasa/cli/project_templates/telco/README.md +25 -0
  184. rasa/cli/project_templates/telco/actions/__init__.py +0 -0
  185. rasa/cli/project_templates/telco/actions/actions.md +12 -0
  186. rasa/cli/project_templates/telco/actions/billing/__init__.py +0 -0
  187. rasa/cli/project_templates/telco/actions/billing/actions_billing.py +204 -0
  188. rasa/cli/project_templates/telco/actions/general/__init__.py +0 -0
  189. rasa/cli/project_templates/telco/actions/general/action_human_handoff.py +49 -0
  190. rasa/cli/project_templates/telco/actions/network/__init__.py +0 -0
  191. rasa/cli/project_templates/telco/actions/network/actions_get_data_from_db.py +48 -0
  192. rasa/cli/project_templates/telco/actions/network/actions_run_diagnostics.py +28 -0
  193. rasa/cli/project_templates/telco/actions/network/actions_session_start.py +18 -0
  194. rasa/cli/project_templates/telco/config.yml +29 -0
  195. rasa/cli/project_templates/telco/credentials.yml +33 -0
  196. rasa/cli/project_templates/telco/csvs/billing.csv +19 -0
  197. rasa/cli/project_templates/telco/csvs/customers.csv +5 -0
  198. rasa/cli/project_templates/telco/data/billing/flow_understand_bill.yml +45 -0
  199. rasa/cli/project_templates/telco/data/data.md +11 -0
  200. rasa/cli/project_templates/telco/data/general/bot_challenge.yml +6 -0
  201. rasa/cli/project_templates/telco/data/general/feedback.yml +20 -0
  202. rasa/cli/project_templates/telco/data/general/goodbye.yml +6 -0
  203. rasa/cli/project_templates/telco/data/general/hello.yml +6 -0
  204. rasa/cli/project_templates/telco/data/general/human_handoff.yml +16 -0
  205. rasa/cli/project_templates/telco/data/general/patterns.yml +30 -0
  206. rasa/cli/project_templates/telco/data/network/flow_reboot_router.yml +8 -0
  207. rasa/cli/project_templates/telco/data/network/flow_reset_router.yml +7 -0
  208. rasa/cli/project_templates/telco/data/network/flow_solve_internet_issue.yml +73 -0
  209. rasa/cli/project_templates/telco/docs/docs.md +8 -0
  210. rasa/cli/project_templates/telco/docs/network/reset_vs_rboot_router.txt +1 -0
  211. rasa/cli/project_templates/telco/docs/network/restart_router.txt +6 -0
  212. rasa/cli/project_templates/telco/docs/network/run_speed_test.txt +6 -0
  213. rasa/cli/project_templates/telco/domain/billing/understand_bill.yml +102 -0
  214. rasa/cli/project_templates/telco/domain/domain.md +13 -0
  215. rasa/cli/project_templates/telco/domain/general/bot_challenge.yml +4 -0
  216. rasa/cli/project_templates/telco/domain/general/feedback.yml +25 -0
  217. rasa/cli/project_templates/telco/domain/general/goodbye.yml +7 -0
  218. rasa/cli/project_templates/telco/domain/general/hello.yml +5 -0
  219. rasa/cli/project_templates/telco/domain/general/human_handoff.yml +26 -0
  220. rasa/cli/project_templates/telco/domain/general/patterns.yml +33 -0
  221. rasa/cli/project_templates/telco/domain/network/reboot_router.yml +21 -0
  222. rasa/cli/project_templates/telco/domain/network/reset_router.yml +12 -0
  223. rasa/cli/project_templates/telco/domain/network/run_speed_test.yml +25 -0
  224. rasa/cli/project_templates/telco/domain/network/solve_internet_issue.yml +75 -0
  225. rasa/cli/project_templates/telco/domain/shared.yml +129 -0
  226. rasa/cli/project_templates/telco/endpoints.yml +67 -0
  227. rasa/cli/project_templates/telco/prompts/rephraser_demo_personality_prompt.jinja2 +40 -0
  228. rasa/cli/project_templates/telco/tests/e2e_test_cases/billing/understand_bill.yml +67 -0
  229. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/bot_challenge.yml +8 -0
  230. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/feedback.yml +46 -0
  231. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/goodbye.yml +9 -0
  232. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/hello.yml +8 -0
  233. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/human_handoff.yml +35 -0
  234. rasa/cli/project_templates/telco/tests/e2e_test_cases/general/patterns.yml +23 -0
  235. rasa/cli/project_templates/telco/tests/e2e_test_cases/network/solve_internet_issue.yml +57 -0
  236. rasa/cli/project_templates/tutorial/config.yml +2 -1
  237. rasa/cli/scaffold.py +46 -2
  238. rasa/core/actions/action.py +0 -1
  239. rasa/core/actions/action_run_slot_rejections.py +1 -1
  240. rasa/core/actions/direct_custom_actions_executor.py +9 -2
  241. rasa/core/brokers/broker.py +1 -1
  242. rasa/core/brokers/kafka.py +52 -8
  243. rasa/core/channels/development_inspector.py +1 -21
  244. rasa/core/channels/hangouts.py +2 -2
  245. rasa/core/channels/inspector/dist/assets/{arc-1ddec37b.js → arc-35222594.js} +1 -1
  246. rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-18af387c.js → blockDiagram-38ab4fdb-a0efbfd3.js} +1 -1
  247. rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-250127a3.js → c4Diagram-3d4e48cf-0584c0f2.js} +1 -1
  248. rasa/core/channels/inspector/dist/assets/channel-8e08bed9.js +1 -0
  249. rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-c3388b34.js → classDiagram-70f12bd4-39f40dbe.js} +1 -1
  250. rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-9c893a82.js → classDiagram-v2-f2320105-1ad755f3.js} +1 -1
  251. rasa/core/channels/inspector/dist/assets/clone-78c82dea.js +1 -0
  252. rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-c111213b.js → createText-2e5e7dd3-b0f4f0fe.js} +1 -1
  253. rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-812a729d.js → edges-e0da2a9e-9039bff9.js} +1 -1
  254. rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-fd5051bc.js → erDiagram-9861fffd-65c9b127.js} +1 -1
  255. rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-3287ac02.js → flowDb-956e92f1-4f08b38e.js} +1 -1
  256. rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-692fb0b2.js → flowDiagram-66a62f08-e95c362a.js} +1 -1
  257. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-2b08f601.js +1 -0
  258. rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-008376f1.js → flowchart-elk-definition-4a651766-703c3015.js} +1 -1
  259. rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-df330a69.js → ganttDiagram-c361ad54-699328ea.js} +1 -1
  260. rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-e03676fb.js → gitGraphDiagram-72cf32ee-04cf4b05.js} +1 -1
  261. rasa/core/channels/inspector/dist/assets/{graph-46fad2ba.js → graph-ee94449e.js} +1 -1
  262. rasa/core/channels/inspector/dist/assets/{index-3862675e-a484ac55.js → index-3862675e-940162b4.js} +1 -1
  263. rasa/core/channels/inspector/dist/assets/{index-a003633f.js → index-c941dcb3.js} +239 -238
  264. rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-3f9e6ec2.js → infoDiagram-f8f76790-c79c2866.js} +1 -1
  265. rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-79f72383.js → journeyDiagram-49397b02-84489d30.js} +1 -1
  266. rasa/core/channels/inspector/dist/assets/{layout-aad098e5.js → layout-a9aa9858.js} +1 -1
  267. rasa/core/channels/inspector/dist/assets/{line-219ab7ae.js → line-eb73cf26.js} +1 -1
  268. rasa/core/channels/inspector/dist/assets/{linear-2cddbe62.js → linear-b3399f9a.js} +1 -1
  269. rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-1d41ed99.js → mindmap-definition-fc14e90a-b095bf1a.js} +1 -1
  270. rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-cc496ee8.js → pieDiagram-8a3498a8-07644b66.js} +1 -1
  271. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-84d32884.js → quadrantDiagram-120e2f19-573a3f9c.js} +1 -1
  272. rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-c0deb984.js → requirementDiagram-deff3bca-d457e1e1.js} +1 -1
  273. rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-b9d7fd62.js → sankeyDiagram-04a897e0-9d26e1a2.js} +1 -1
  274. rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-7d517565.js → sequenceDiagram-704730f1-3a9cde10.js} +1 -1
  275. rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-98ef9b27.js → stateDiagram-587899a1-4f3e8cec.js} +1 -1
  276. rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-cee70748.js → stateDiagram-v2-d93cdb3a-e617e5bf.js} +1 -1
  277. rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-3f9d1c96.js → styles-6aaf32cf-eab30d2f.js} +1 -1
  278. rasa/core/channels/inspector/dist/assets/{styles-9a916d00-67471923.js → styles-9a916d00-09994be2.js} +1 -1
  279. rasa/core/channels/inspector/dist/assets/{styles-c10674c1-bd093fb7.js → styles-c10674c1-b7110364.js} +1 -1
  280. rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-675794e8.js → svgDrawCommon-08f97a94-3ebc92ad.js} +1 -1
  281. rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-0ac67617.js → timeline-definition-85554ec2-7d13d2f2.js} +1 -1
  282. rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-c018dc37.js → xychartDiagram-e933f94c-488385e1.js} +1 -1
  283. rasa/core/channels/inspector/dist/index.html +2 -2
  284. rasa/core/channels/inspector/index.html +1 -1
  285. rasa/core/channels/inspector/src/App.tsx +15 -42
  286. rasa/core/channels/inspector/src/components/Chat.tsx +2 -3
  287. rasa/core/channels/inspector/src/components/DialogueInformation.tsx +20 -3
  288. rasa/core/channels/inspector/src/components/LatencyDisplay.tsx +63 -35
  289. rasa/core/channels/inspector/src/helpers/audio/audiostream.ts +14 -0
  290. rasa/core/channels/inspector/src/types.ts +32 -7
  291. rasa/core/channels/studio_chat.py +43 -43
  292. rasa/core/channels/voice_stream/asr/asr_event.py +1 -1
  293. rasa/core/channels/voice_stream/asr/azure.py +6 -3
  294. rasa/core/channels/voice_stream/asr/deepgram.py +1 -1
  295. rasa/core/channels/voice_stream/audiocodes.py +3 -0
  296. rasa/core/channels/voice_stream/browser_audio.py +55 -3
  297. rasa/core/channels/voice_stream/genesys.py +2 -1
  298. rasa/core/channels/voice_stream/jambonz.py +9 -1
  299. rasa/core/channels/voice_stream/twilio_media_streams.py +16 -0
  300. rasa/core/channels/voice_stream/voice_channel.py +61 -0
  301. rasa/core/concurrent_lock_store.py +66 -16
  302. rasa/core/constants.py +7 -0
  303. rasa/core/iam_credentials_providers/__init__.py +0 -0
  304. rasa/core/iam_credentials_providers/aws_iam_credentials_providers.py +226 -0
  305. rasa/core/iam_credentials_providers/credentials_provider_protocol.py +90 -0
  306. rasa/core/lock_store.py +46 -10
  307. rasa/core/nlg/generator.py +1 -1
  308. rasa/core/policies/enterprise_search_policy.py +4 -7
  309. rasa/core/policies/flows/flow_executor.py +9 -2
  310. rasa/core/processor.py +32 -0
  311. rasa/core/redis_connection_factory.py +469 -0
  312. rasa/core/tracker_stores/redis_tracker_store.py +32 -14
  313. rasa/core/tracker_stores/sql_tracker_store.py +57 -1
  314. rasa/dialogue_understanding/generator/flow_retrieval.py +10 -9
  315. rasa/engine/graph.py +5 -1
  316. rasa/engine/loader.py +12 -0
  317. rasa/engine/storage/local_model_storage.py +83 -3
  318. rasa/model_manager/model_api.py +1 -2
  319. rasa/model_manager/runner_service.py +1 -1
  320. rasa/model_manager/socket_bridge.py +1 -2
  321. rasa/model_manager/trainer_service.py +12 -9
  322. rasa/model_manager/utils.py +1 -29
  323. rasa/model_manager/warm_rasa_process.py +13 -3
  324. rasa/shared/core/constants.py +1 -0
  325. rasa/shared/core/domain.py +62 -15
  326. rasa/shared/core/events.py +2 -0
  327. rasa/shared/core/flows/flow.py +1 -1
  328. rasa/shared/core/flows/flow_step.py +7 -1
  329. rasa/shared/core/flows/steps/call.py +8 -1
  330. rasa/shared/core/flows/yaml_flows_io.py +16 -8
  331. rasa/shared/core/slots.py +4 -0
  332. rasa/shared/importers/importer.py +6 -0
  333. rasa/shared/importers/utils.py +77 -1
  334. rasa/shared/nlu/training_data/schemas/responses.yml +3 -0
  335. rasa/studio/upload.py +12 -46
  336. rasa/telemetry.py +97 -23
  337. rasa/utils/io.py +27 -9
  338. rasa/utils/json_utils.py +6 -1
  339. rasa/utils/log_utils.py +5 -1
  340. rasa/utils/openapi.py +144 -0
  341. rasa/utils/pypred.py +38 -0
  342. rasa/validator.py +19 -11
  343. rasa/version.py +1 -1
  344. {rasa_pro-3.14.0.dev20250825.dist-info → rasa_pro-3.14.0.dev20250922.dist-info}/METADATA +27 -25
  345. {rasa_pro-3.14.0.dev20250825.dist-info → rasa_pro-3.14.0.dev20250922.dist-info}/RECORD +348 -109
  346. rasa/core/channels/inspector/dist/assets/channel-59f6d54b.js +0 -1
  347. rasa/core/channels/inspector/dist/assets/clone-26177ddb.js +0 -1
  348. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-29c03f5a.js +0 -1
  349. {rasa_pro-3.14.0.dev20250825.dist-info → rasa_pro-3.14.0.dev20250922.dist-info}/NOTICE +0 -0
  350. {rasa_pro-3.14.0.dev20250825.dist-info → rasa_pro-3.14.0.dev20250922.dist-info}/WHEEL +0 -0
  351. {rasa_pro-3.14.0.dev20250825.dist-info → rasa_pro-3.14.0.dev20250922.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,9 @@
1
+ flows:
2
+ check_balance:
3
+ description: |
4
+ Guides the user through retrieving their account balance by requesting an
5
+ account number or an account name and returning the balance on the selected account
6
+ name: check account balance
7
+ steps:
8
+ - action: check_balance
9
+ - action: utter_current_balance
@@ -0,0 +1,26 @@
1
+ flows:
2
+ download_statements:
3
+ name: download account statements
4
+ description: Allow users to download their monthly account statements in PDF or CSV format.
5
+ steps:
6
+ - collect: statement_month
7
+ description: "The specific month the user wants the account statement for."
8
+ utter: utter_ask_statement_month
9
+ - collect: statement_year
10
+ description: "The specific year of the account statement requested by the user."
11
+ utter: utter_ask_statement_year
12
+ - collect: statement_format
13
+ description: "The preferred file format for the statement: PDF or CSV."
14
+ - collect: confirmation
15
+ description: "Confirms whether the user wishes to proceed; accepts True or False, yes or no."
16
+ utter: utter_ask_statement_download_confirmation
17
+ ask_before_filling: true
18
+ next:
19
+ - if: not slots.confirmation
20
+ then:
21
+ - action: utter_statement_download_cancelled
22
+ next: END
23
+ - else: initiate_download
24
+ - id: initiate_download
25
+ action: utter_statement_download_complete
26
+ next: END
@@ -0,0 +1,25 @@
1
+ flows:
2
+ bill_pay_reminder:
3
+ name: set up bill payment reminder
4
+ description: Help users set up automatic reminders for recurring bill payments.
5
+ steps:
6
+ - collect: biller_name
7
+ description: The name of the company or person the bill is paid to.
8
+ - collect: bill_due_date
9
+ description: The date the bill is due.
10
+ - collect: reminder_frequency
11
+ description: How often the reminder should be sent (once, monthly, weekly).
12
+ - id: confirm_reminder
13
+ collect: confirmation
14
+ utter: utter_ask_bill_pay_reminder_confirmation
15
+ description: Asks the user to confirm setting the reminder.
16
+ ask_before_filling: true
17
+ next:
18
+ - if: not slots.confirmation
19
+ then:
20
+ - action: utter_bill_pay_reminder_cancelled
21
+ next: END
22
+ - else: setup_bill_pay_reminder
23
+ - id: setup_bill_pay_reminder
24
+ action: utter_bill_pay_reminder_complete
25
+ next: END
@@ -0,0 +1,35 @@
1
+ flows:
2
+ activate_card:
3
+ description: Activates user's card.
4
+ name: activate card
5
+ steps:
6
+ - action: utter_start_activate_card
7
+
8
+ - id: get_bank_card_number
9
+ collect: bank_card_number
10
+ description: The number of the card user wants to activate
11
+ ask_before_filling: true
12
+
13
+ - action: check_that_card_exists
14
+ next:
15
+ - if: not slots.return_value
16
+ then:
17
+ - action: utter_bank_card_not_found
18
+ next: get_bank_card_number
19
+ - else: activation_confirmation
20
+
21
+ - id: activation_confirmation
22
+ collect: confirmation
23
+ description: "Confirms the request for a card activation; accepts True or False, yes or no."
24
+ utter: utter_ask_activate_card_confirmation
25
+ ask_before_filling: true
26
+ next:
27
+ - if: not slots.confirmation
28
+ then:
29
+ - action: utter_activate_card_cancelled
30
+ next: END
31
+ - else: execute_activation
32
+
33
+ - id: execute_activation
34
+ action: utter_activate_card_successful
35
+ next: END
@@ -0,0 +1,45 @@
1
+ flows:
2
+ block_card:
3
+ description: Applies a permanent or temporary block to stolen, lost or compromised banking cards.
4
+ name: block card
5
+ steps:
6
+ - action: utter_start_block_card
7
+
8
+ - id: get_bank_card_number
9
+ collect: bank_card_number
10
+ description: The number of the card user wants to block
11
+ ask_before_filling: true
12
+
13
+ - action: check_that_card_exists
14
+ next:
15
+ - if: not slots.return_value
16
+ then:
17
+ - action: utter_bank_card_not_found
18
+ next: get_bank_card_number
19
+ - else: permanent_or_temporary_block
20
+
21
+ - id: permanent_or_temporary_block
22
+ collect: card_block_type
23
+ description: Indicates if the user wants a temporary or permanent block on their card.
24
+
25
+ - id: confirm_block_card
26
+ collect: confirmation
27
+ description: "Confirms the request for card blocking; accepts True or False, yes or no."
28
+ utter: utter_ask_block_card_confirmation
29
+ ask_before_filling: true
30
+ next:
31
+ - if: not slots.confirmation
32
+ then:
33
+ - action: utter_block_card_cancelled
34
+ next: END
35
+ - if: slots.card_block_type is "permanent"
36
+ then: execute_permanent_block
37
+ - else: execute_temporary_freeze
38
+
39
+ - id: execute_permanent_block
40
+ action: utter_block_card_successful
41
+ next: END
42
+
43
+ - id: execute_temporary_freeze
44
+ action: utter_freeze_card_successful
45
+ next: END
@@ -0,0 +1,14 @@
1
+ flows:
2
+ list_cards:
3
+ name: Show cards along with the account information the cards are linked to.
4
+ description: show your card list
5
+ steps:
6
+ - action: list_cards
7
+ next:
8
+ - if: slots.cards_list
9
+ then:
10
+ - action: utter_list_cards
11
+ next: END
12
+ - else:
13
+ - action: utter_no_cards
14
+ next: END
@@ -0,0 +1,16 @@
1
+ flows:
2
+ replace_card:
3
+ description: Replaces an existing card if it’s lost, stolen, damaged, or compromised (including suspected fraud).
4
+ name: replace card
5
+ steps:
6
+ - collect: confirm_correct_card
7
+ description: "Confirms whether the displayed card is the correct one to replace; accepts True or False, yes or no."
8
+ ask_before_filling: true
9
+ next:
10
+ - if: slots.confirm_correct_card
11
+ then:
12
+ - call: replace_eligible_card
13
+ next: END
14
+ - else:
15
+ - action: utter_relevant_card_not_linked
16
+ next: END
@@ -0,0 +1,29 @@
1
+ flows:
2
+ replace_eligible_card:
3
+ description: |
4
+ Guides the user through replacing an eligible card based on the reason (lost, damaged, or unknown)
5
+ and addresses potential fraud if needed
6
+ name: replace eligible card
7
+ steps:
8
+ - collect: replacement_reason
9
+ description: "Indicates why the user needs to replace their card: lost, damaged, or reason unknown."
10
+ next:
11
+ - if: slots.replacement_reason == "lost"
12
+ then:
13
+ - collect: was_card_used_fraudulently
14
+ description: "Indicates whether the card has been used for unauthorized or fraudulent transactions; accepts True or False, yes or no."
15
+ ask_before_filling: true
16
+ next:
17
+ - if: slots.was_card_used_fraudulently
18
+ then:
19
+ - action: utter_report_fraud
20
+ next: END
21
+ - else: start_replacement
22
+ - if: slots.replacement_reason == "damaged"
23
+ then: start_replacement
24
+ - else:
25
+ - action: utter_unknown_replacement_reason_handover
26
+ next: END
27
+ - id: start_replacement
28
+ action: utter_will_cancel_and_send_new
29
+ - action: utter_new_card_has_been_ordered
@@ -0,0 +1,33 @@
1
+ flows:
2
+ add_contact:
3
+ description: Add a person with their contact details to your contacts list to enable simplified payments.
4
+ name: add a contact
5
+ steps:
6
+ - collect: add_contact_handle
7
+ description: The persons handle or username starting with @.
8
+ - collect: add_contact_name
9
+ description: a name of a person
10
+ - collect: confirmation
11
+ utter: utter_ask_add_contact_confirmation
12
+ description: Confirms whether the user wishes to proceed; accepts True or False, yes or no.
13
+ ask_before_filling: true
14
+ next:
15
+ - if: not slots.confirmation
16
+ then:
17
+ - action: utter_add_contact_cancelled
18
+ next: END
19
+ - else: add_contact
20
+ - id: add_contact
21
+ action: add_contact
22
+ next:
23
+ - if: "slots.return_value = 'success'"
24
+ then:
25
+ - action: utter_contact_added
26
+ next: END
27
+ - if: "slots.return_value = 'already_exists'"
28
+ then:
29
+ - action: utter_contact_already_exists
30
+ next: END
31
+ - else:
32
+ - action: utter_add_contact_error
33
+ next: END
@@ -0,0 +1,14 @@
1
+ flows:
2
+ list_contacts:
3
+ name: Show the people in your contacts list along with their details. The user can transfer money to these contacts, so they are valid payees as well.
4
+ description: show your contact list
5
+ steps:
6
+ - action: list_contacts
7
+ next:
8
+ - if: slots.contacts_list
9
+ then:
10
+ - action: utter_list_contacts
11
+ next: END
12
+ - else:
13
+ - action: utter_no_contacts
14
+ next: END
@@ -0,0 +1,31 @@
1
+ flows:
2
+ remove_contact:
3
+ name: remove a contact
4
+ description: Remove somebody and their details from your contacts list.
5
+ steps:
6
+ - collect: remove_contact_handle
7
+ description: The handle or username starting with @ of the contact to be removed.
8
+ - collect: confirmation
9
+ utter: utter_ask_remove_contact_confirmation
10
+ description: Confirms whether the user wishes to proceed; accepts True or False, yes or no.
11
+ ask_before_filling: true
12
+ next:
13
+ - if: not slots.confirmation
14
+ then:
15
+ - action: utter_remove_contact_cancelled
16
+ next: END
17
+ - else: remove_contact
18
+ - id: remove_contact
19
+ action: remove_contact
20
+ next:
21
+ - if: "slots.return_value = 'success'"
22
+ then:
23
+ - action: utter_remove_contact_success
24
+ next: END
25
+ - if: "slots.return_value = 'not_found'"
26
+ then:
27
+ - action: utter_contact_not_in_list
28
+ next: END
29
+ - else:
30
+ - action: utter_remove_contact_error
31
+ next: END
@@ -0,0 +1,14 @@
1
+ ## 📂 `data/` – The Agent's Business Logic
2
+
3
+ This folder holds files that define your agent’s skills using "flows". [1](https://rasa.com/docs/pro/build/writing-flows) Each flow is a step-by-step conversation pattern (like a recipe) for handling a user goal (e.g., checking a balance, updating an address).
4
+
5
+ **What you'll find:**
6
+ - **accounts/**: Account management flows (balance checking, statement downloads)
7
+ - **bills/**: Bill payment flows and reminders
8
+ - **cards/**: Card management flows (activation, blocking, replacement, listing)
9
+ - **contacts/**: Contact management flows (add, list, remove trusted contacts)
10
+ - **transfers/**: Money transfer flows (account-to-account, third-party payments)
11
+ - **general/**: General banking conversations (greetings, help, support)
12
+
13
+ **Edit YAML files in this folder** to add new banking features, modify existing flows, or adjust what the agent asks customers.
14
+
@@ -0,0 +1,6 @@
1
+ flows:
2
+ bot_challenge:
3
+ name: bot challenge
4
+ description: This flow clarifies that the user is talking to a chatbot, when the user ask if they are talking to a chatbot or a human
5
+ steps:
6
+ - action: utter_bot_challenge
@@ -0,0 +1,20 @@
1
+ # Simple thumbs up/down feedback flow
2
+ flows:
3
+ leave_feedback:
4
+ description: This flow collects simple thumbs up or thumbs down feedback
5
+ if: False # Flow guard to prevent direct triggering
6
+ steps:
7
+ - collect: feedback_rating
8
+ description: Ask user for thumbs up or thumbs down feedback
9
+ - id: feedback_response
10
+ noop: true
11
+ next:
12
+ - if: slots.feedback_rating == "thumbs_up"
13
+ then: positive_response
14
+ - else: negative_response
15
+ - id: positive_response
16
+ action: utter_thankyou_positive
17
+ next: END
18
+ - id: negative_response
19
+ action: utter_thankyou_negative
20
+ next: END
@@ -0,0 +1,6 @@
1
+ flows:
2
+ goodbye:
3
+ description: Handle user goodbye messages, say farewell, and collect feedback
4
+ steps:
5
+ - action: utter_goodbye
6
+ - link: leave_feedback
@@ -0,0 +1,6 @@
1
+ flows:
2
+ hello:
3
+ description: Flow for greeting the user hello
4
+ name: hello
5
+ steps:
6
+ - action: utter_hello
@@ -0,0 +1,9 @@
1
+ flows:
2
+ help:
3
+ description: This flow addresses user inquiries about the agent's capabilities.
4
+ It starts by acknowledging the user's request and providing a clear overview of
5
+ key skills and services. This helps users understand how the agent can assist
6
+ them effectively.
7
+ name: help
8
+ steps:
9
+ - action: utter_help
@@ -0,0 +1,16 @@
1
+ version: "3.1"
2
+ flows:
3
+ human_handoff:
4
+ description: When you are unable to handle the request or the user is frustrated - offers to hand the user over to a live human agent.
5
+ steps:
6
+ - collect: confirm_human_handoff
7
+ ask_before_filling: True
8
+ next:
9
+ - if: slots.confirm_human_handoff
10
+ then:
11
+ - action: utter_transferring_to_human
12
+ - action: action_human_handoff
13
+ next: END
14
+ - else:
15
+ - action: utter_human_handoff_cancelled
16
+ next: END
@@ -0,0 +1,9 @@
1
+ flows:
2
+ welcome:
3
+ if: False
4
+ description: |
5
+ This flow is designed to greet and onboard new users who initiate a welcome intent.
6
+ It begins with an initial greeting message to establish a friendly interaction.
7
+ name: say hello
8
+ steps:
9
+ - action: utter_greeting
@@ -0,0 +1,7 @@
1
+ flows:
2
+ pattern_completed:
3
+ description: A flow has been completed and there is nothing else to be done
4
+ if: False
5
+ steps:
6
+ - noop: true
7
+ next: END
@@ -0,0 +1,7 @@
1
+ flows:
2
+ pattern_correction:
3
+ description: Handle a correction of a slot value.
4
+ name: pattern correction
5
+ steps:
6
+ - action: action_correct_flow_slot
7
+ next: "END"
@@ -0,0 +1,8 @@
1
+ flows:
2
+ pattern_search:
3
+ name: pattern_search
4
+ description: Flow for handling knowledge-based questions
5
+ steps:
6
+ - id: 0_action_trigger_search
7
+ next: END
8
+ action: action_trigger_search
@@ -0,0 +1,8 @@
1
+ flows:
2
+ pattern_session_start:
3
+ description: Flow for starting the conversation
4
+ name: pattern session start
5
+ nlu_trigger:
6
+ - intent: session_start
7
+ steps:
8
+ - link: welcome
@@ -0,0 +1,18 @@
1
+ flows:
2
+ check_transfer_limit:
3
+ description: Provides the maximum allowed amount the user can send or transfer per transaction, per day, or per month, as set by account policies—not the current available balance.
4
+ steps:
5
+
6
+ - collect: transfer_limit_type
7
+ description: Daily or monthly transfer limit.
8
+
9
+ - action: check_transfer_limit
10
+ next:
11
+ - if: not slots.return_value
12
+ then:
13
+ - action: utter_transfer_limit_error
14
+ next: END
15
+ - else: show_transfer_limit
16
+
17
+ - id: show_transfer_limit
18
+ action: utter_show_transfer_limit
@@ -0,0 +1,46 @@
1
+ flows:
2
+ list_transactions:
3
+ name: Show Recent Transactions
4
+ description: |
5
+ Enables users to quickly view their most recent account transactions.
6
+ After presenting these, the users has the option to view their scheduled (upcoming)
7
+ transactions.
8
+ steps:
9
+ - action: list_transactions
10
+ - action: utter_transactions
11
+ - collect: list_transactions_next_option
12
+ ask_before_filling: true
13
+ next:
14
+ - if: slots.list_transactions_next_option == "show_scheduled_transactions"
15
+ then: show_scheduled_transactions
16
+ - if: slots.list_transactions_next_option == "show_all_transactions"
17
+ then: show_all_transactions
18
+ - else:
19
+ - action: utter_no_next_option
20
+ next: END
21
+ - id: show_scheduled_transactions
22
+ link: list_scheduled_transactions
23
+ - id: show_all_transactions
24
+ link: list_all_transactions
25
+
26
+ list_all_transactions:
27
+ name: View All Transactions
28
+ description: |
29
+ Enables users to view all of their account transactions.
30
+ if: False
31
+ steps:
32
+ - set_slots:
33
+ - full_transaction_list: true
34
+ - action: list_transactions
35
+ - action: utter_transactions
36
+ - set_slots:
37
+ - full_transaction_list: false
38
+
39
+ list_scheduled_transactions:
40
+ name: List scheduled Transactions
41
+ if: False
42
+ description: |
43
+ Shows only the upcoming scheduled transactions of the account.
44
+ steps:
45
+ - action: utter_scheduled_transactions
46
+ next: END
@@ -0,0 +1,51 @@
1
+ flows:
2
+
3
+ move_money_between_accounts:
4
+ name: move money between accounts
5
+ description: Transfers money between user's own accounts.
6
+ if: False
7
+
8
+ steps:
9
+ - collect: self_transfer_source_account
10
+ description: The user's source account from which the money will be transferred.
11
+ # rejections:
12
+ # - if: self_transfer_destination_account == slots.self_transfer_source_account
13
+ # utter: utter_accounts_invalid
14
+
15
+ - collect: self_transfer_destination_account
16
+ description: The destination account that will receive the funds.
17
+ # rejections:
18
+ # - if: self_transfer_destination_account == slots.self_transfer_source_account
19
+ # utter: utter_accounts_invalid
20
+
21
+ - id: ask_amount
22
+ collect: amount_of_money
23
+ description: |
24
+ The amount of money to transfer, without specifying the currency symbol
25
+ (e.g., 250.00).
26
+
27
+ - action: check_transfer_funds
28
+ next:
29
+ - if: not slots.has_sufficient_funds
30
+ then:
31
+ - action: utter_transfer_money_insufficient_funds
32
+ - set_slots:
33
+ - amount_of_money: null
34
+ - has_sufficient_funds: null
35
+ next: ask_amount
36
+ - else: confirm_transfer
37
+
38
+ - id: confirm_transfer
39
+ collect: confirmation
40
+ utter: utter_ask_self_transfer_final_confirmation
41
+ description: User confirmation to proceed with the transfer between their accounts; accepts True or False, yes or no.
42
+ ask_before_filling: true
43
+ next:
44
+ - if: not slots.confirmation
45
+ then:
46
+ - action: utter_transfer_cancelled
47
+ next: END
48
+ - else: execute_transfer
49
+ - id: execute_transfer
50
+ action: utter_self_transfer_completed
51
+ next: END
@@ -0,0 +1,34 @@
1
+ flows:
2
+ transfer_money:
3
+ name: transfer money
4
+ description: |
5
+ Handles the following types of money transfers initiated by the user:
6
+ - "Third Party": Transfer money to another person, business or service within domestic banks. Third party transfer can be immediate, scheduled, or set up as a recurring payments.
7
+ - "Self transfer": Transfer funds between user's own accounts at the same bank (immediate only).
8
+
9
+ steps:
10
+ - id: choose_transfer_type
11
+ collect: transfer_type
12
+ description: |
13
+ Specifies the type of transfer based on the intended recipient:
14
+ - "Self transfer": Moving money between the user's own accounts at the same bank.
15
+ - "Third party": Sending money to another person, business, or paying a bill domestically (inside the country). Includes friends, family, companies, service providers.
16
+
17
+ If the user mentions sending money to a person, a business, paying a bill, or setting up a recurring payment, set "third party" transfer.
18
+ If the user mentions transferring funds between their own accounts (e.g., moving money from savings to checking), set "self transfer".
19
+ next:
20
+ - if: slots.transfer_type == "self transfer"
21
+ then: perform_self_transfer
22
+ - if: slots.transfer_type == "third party"
23
+ then: perform_third_party_transfer
24
+ - else:
25
+ - action: utter_inform_on_wrong_transfer_type
26
+ next: choose_transfer_type
27
+
28
+ - id: perform_self_transfer
29
+ call: move_money_between_accounts
30
+ next: END
31
+
32
+ - id: perform_third_party_transfer
33
+ call: transfer_money_to_a_third_party
34
+ next: END