원래 외부서버 <-> 구글 클라우드 서버<-> 디바이스 의 형태로 푸시메시지를 날려주거든요. 외부서버에서 각 디바이스의 토큰값이나 구독주제를 저장해서 그값을 기반으로 구글클라우드 서버에 푸시메시지 요청을 하면 해당 디바이스로 푸시메시지가 날아가는 형태로요. 학생이시니 따로 24시간 서버를 돌릴 수 없으니 Firebase Functions라는 기능을 활용하시면 될듯해요. Firebase 실시간 데이터 베이스에서 발생하는 이벤트들을 자체적으로 캐치해서 실행시켜주는 서비스에요.
https://cionman.tistory.com/65 전 이글을 참고해서 만들어 봤었습니다. 다만 Functions로 구동시켰을때 Heroku호스팅서비스처럼 슬립모드가 있는것인지 오랜시간 구동이 되지않을경우 첫 트리거시간이 지연됩니다.