Phoenix Counting Application - (FunctionClauseError) no function clause matching

I’m currently learning some phoenix and built a counting app with a simple increase/decrease. Both worked fine so I decided to implement GenServers and PubSub to see how many users currently are on the page (presence).

Whole error:

GenServer #PID<0.511.0> terminating
** (FunctionClauseError) no function clause matching in CounterWeb.Counter.handle_info/2
    (counter 0.1.0) lib/counter_web/live/counter.ex:45: CounterWeb.Counter.handle_info({:count, 1}, #Phoenix.LiveView.Socket<assigns: %{__changed__: %{}, flash: %{}, live_action: nil, present: 1, val: 
1}, endpoint: CounterWeb.Endpoint, id: "phx-FtSq5dehn8AlGgAF", parent_pid: nil, root_pid: #PID<0.511.0>, router: CounterWeb.Router, transport_pid: #PID<0.506.0>, view: CounterWeb.Counter, ...>)  

I think it’s coming from my make change function

defp make_change(count, change) do
    new_count = count + change
    PubSub.broadcast(Counter.PubSub, topic(), {:count, new_count})
    {:reply, new_count, new_count}
  end

and my handle info

def handle_info(
       %{event: "presence_diff", payload: %{joins: joins, leaves: leaves}},
       %{assigns: %{present: present}} = socket
    ) do
   new_present = present + map_size(joins) - map_size(leaves)

   {:noreply, assign(socket, :present, new_present)}
end

Someone recommended me to create another clause and do the same kind of setup as I did with the previous functions to handle the calls, example:

def handle_call(:reply, _from, count) do
    {:ok, count, count}
  end

  def handle_call(:incr, _from, count) do
    make_change(count, +1)
  end

  def handle_call(:decr, _from, count) do
    make_change(count, -1)
  end

My first argument is the message I receive, I am sending a tuple and I have to match that tuple.

I think I have to add another handle_info, like this

def handle_info({count: count}, socket) do
   # ???
   {:noreply, socket}
end

How would I handle/implement that? Can anyone help me by explaining that a bit?