Trying to check if a message contains a value in a table

I have a command where I want to make it so high ranks in my game can self assign different tasks and if their message contains any of the strings within a table to run code. I have been trying to do this for a while but the for loop I am using to go through the table doesn’t seem to be working. It keeps returning nil rather than the specific value of the table which leads me to believe the i value isn’t actually iterating through all of the values. If anyone could help I would appreciate it, here is the code I use. The error was invalid argument #1 to find, string expected, got nil.

local Duties = {"answering calls", "patrolling first floor", "patrolling second floor", "ranking players", "assigning duties"}
for i,v in pairs(Duties) do
     if string.find(Duties[i],Message) then
          AssignedDuty = Duties[I]
		  end
		     end
if table.find(Duties, Message) then
   AssignedDuty = Duties[I]
end

This would check if the message contains any of the items on the duties table correct? This is still not working in my code if that is the case.

I need to specifically iterate through every value of the table because I want to check if within the entire message one of the values of the table is found. The message contains other words that aren’t specifically on the list which is why I have to do this.