The default Phoenix generated socket file is MyApp.Web.UserSocket. Your original post mentioned something about MyApp.Schools.SchoolSocket. Did you just rename that file and module, or do you have multiple sockets listed in your endpoint?
Do you have a repository that you would be able to show us?
I think we have found the problem source, it’s that we were joining channel before waiting socket to get actually opened at android side , I am not sure, but now we join channel only after the socket got opened.
*1. connect the socket.
*2. when connected, join the channel
*3. the channel is successfully joined
*4. start pushing (long, lat) message to the joined channel, each 5 seconds. This works fine, and the message is broadcasted as expected inside the topic at server side.
~~ now produce the issue ~~
*5. disconnect the phone internet connection.
*6. reconnect the phone internet connection.
*7. the client will try to re-connect the socket again.
*8. the client successfully reconnect
*9. my app is trying to push data to the channel as it did in step 4, then, I will start seeing the error at server side:
[warn] Ignoring unmatched topic "buses:x" in MyApp.Schools.SchoolSocket