Action.py file is not reflecting in custom action

import json
import requests
def cases(state,district):
    global lst
    source=requests.get('https://api.covid19india.org/v2/state_district_wise.json').json()
   
    for i in range(len(source)):
        if(source[i]['state']==state):
            lst=source[i]['districtData']
            for j in range(len(lst)):
                if(lst[j]['district']==district):
                    ans=lst[j]['confirmed']
                    #print(ans)
                    return print(ans)

my app.py file

from typing import Any, Text, Dict, List
from app import cases
from rasa_sdk import Action, Tracker
from rasa_sdk.executor import CollectingDispatcher
class ActionHelloWorld(Action):

    def name(self) -> Text:
        return "action_total_cases"

    def run(self, dispatcher: CollectingDispatcher,
            tracker: Tracker,
            domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
            state=tracker.latest_message['text']
            district=tracker.latest_message['text']
            temp=cases(state,district)
            dispatcher.utter_template("utter_ans_state",tracker,app_ans=temp)
            return []
  1. my action.py file
  2. im not getting output in utter_ans_state it showing as ‘none’

Can you attach a print() on the temp variable in your actions.py?

Also, it may be better to simply format your entire response into a string and directly pass that in instead of referring to an utter_instance, because your response has variables in it.

Since you’re making a Covid-19 tracker from what I can tell, you could go for something like:

dispatcher.utter_template(f"Total cases in {district},{state} is {temp}")

Thank You for your response @ActuallyAcey