Custom action is run after every user interaction even though it is not supposed to

Hi everyone,

I'm currently having trouble with the slot extraction.

What I need are a couple of boolean slots that are only set in specific custom actions when those actions appear in my story. I read in the documentation that the default action action_extract_slots is run after every user turn and that the custom slots where a specific action is indicated are therefore filled after every user interaction.

However, [here](https://rasa.com/docs/rasa/domain/#custom-slot-mappings) it says that if you don't indicate a specific action within your slot declaration, the slot

will not be updated on every user turn, but only once a custom action that returns a SlotSet event for it is predicted

This doesn't seem to work for me: I defined a couple of slots like this

variable_missing
   type: bool
   influence_conversation: true
   mappings:
   - type: custom

and I wrote a custom action with a “SlotSet”-Event where this slot is supposed to be set. My assistant now fills this slot after every user turn, no matter if the custom action is predicted or not. He does the same thing with a text-slot, which is also only supposed to be set when the custom action appears in my story.This is exactly what I wanted to avoid. What am I doing wrong?

I’m not 100% sure, but it think my assistant didn’t use to do this before, but started after I added two forms to my stories. I also think that my assistant always calls the same custom action after every user interaction, and only the one, even though it is not the only one in which the respective slots are being set.

I use rasa version 3.2.10.

Thanks in advance for any kind of help!

@Steffi try investigate using rasa interactive mode or check slot filling or custom slot on rasa YouTube channel, Vincent shared the awesome video.

Do check your stories or rules that it’s proper as per bot/user conversation or as per your use case.

Do share your update, if that didn’t helped you. Cheers

@nik202 Thank you for your answer!

In the end, my problem seems to have been solved by modifying all custom slots that were directly connected to one specific custom action. So whenever I had a declaration like this …

variable_missing
   type: bool
   influence_conversation: true
   mappings:
   - type: custom
     action: some_action

…, I deleted the last line (action: some_action). As soon as there was no slot left with this action declaration, the whole thing worked. The problems appears to have been caused by the mix of custom slots with and custom slots without the specific action.

Maybe this will help someone else, too.

@Steffi great, close this thread for future reference for others.