질문을 삭제하지 말아주세요.!
 
1
0
-1

API 호출로 알림을 보내야 합니다.

예를 들면 카카오톡 알림 같이요

특정 http로 post를 보내서 호출을 하고 싶은데 notification 에서 어떻게 처리할 수 있나요?

정확히 notification 이 어떤방식으로 작동하는지 잘 모르겠습니다.

별도의 api 기능없이 메일이나 슬랙이나 DB?(이건 어떤알림을 보내는건지 모르겠습니다.) 그저 via 함수와 to 함수를 이용해서 알림을 보내는 건지 잘 모르겠습니다.

정리하자면 notification 기능으로 다른 api를 호출할 수 있는 지 그게 아니면 카카오톡 알림을 어떻게 해야할 지....(이게 제일 큰 문제입니다.) 

답변을 알고 계신분이 계시다면 답변 부탁드립니다.

    CommentAdd your comment...

    1 answer

    1.  
      1
      0
      -1

      Kakao 알림톡은 custom-channel 를 작성하셔야합니다. 매뉴얼 링크는 확인 해보셨겠지만 혹시 몰라서 추가했습니다.

      https://laravel.kr/docs/5.5/notifications#custom-channels

      커스텀 채널들을 모아둔 페이지가 있는데 여기서 기존에 작성된 커스텀 채널들을 참고하시면 조금 편하실 듯 합니다.

      http://laravel-notification-channels.com/

      1. lzao

        답변 감사합니다.

        커스텀 채널들 카카오 알림톡 push 커스텀 채널을 사용해봤는데 (onesignal 이용)

        해당 문서에 나와있는대로 작업했는데 에러가

        Call to undefined method Illuminate\Database\Query\Builder::routeNotificationFor()

        이런 에러가 나타납니다.

        use Notifiable; 를 사용하는 User모델에서다가

        public function routeNotificationForOneSignal()
        {
            return ['email' => 'test@test.com'];
        }

        이란 함수를 만들고

        Controller단에서


        $user = User::where('id',$id);
        
        Notification::send($user, new UserNotification());


        이런식으로Notification 파사드 이용해서 알림 호출을 하는데 저런 에러가 나타납니다.

        config/app.php 에도 Onsignal Service Provider도 추가 했습니다.

        왜 해당 routeNotificationForOnesignal() 함수를 찾지 못하는 걸까요?




      2. lzao

        해당 댓글의 문제는 User::where('id',$id)→first(); 에서 first가 빠졌습니다.

        first() 추가 후 다른 문제가 생겼습니다.


      CommentAdd your comment...