Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Order request 의 기능 축소 제안 #33

Open
phj0407 opened this issue Aug 29, 2022 · 4 comments
Open

Order request 의 기능 축소 제안 #33

phj0407 opened this issue Aug 29, 2022 · 4 comments
Assignees

Comments

@phj0407
Copy link
Collaborator

phj0407 commented Aug 29, 2022

메뉴 요청은 EuPI 로, 주문 요청은 string 데이터로 받는 구조가 복잡할 뿐 아니라 주문 내역을 string 데이터로 보내기에는 현재 Euphony 에서 10글자 내외까지만 전달되는 상황입니다. 주문내역 전송 기능을 삭제하고, EuPI 모드의 주파수 구분을 통해 메뉴 요청/주문 요청 구분 및 알림 기능까지만 구현하는 건 어떠신가요? 코드를 짜는데 EuPI 와 string 데이터 모두 사용하는 괜찮은 방법이 떠오르지 않네요...

mEuPIRxManagerMenu = EuRxManager(EuOption.ModeType.EUPI) 
mEuPIRxManagerMenu.setOnWaveKeyDown(RequestCodeEnum.MENU_REQUEST.code.toInt()) {
            Toast.makeText(this, "Menu request detected", Toast.LENGTH_SHORT).show()
            Log.d(TAG, "mEuPIRxManagerMenu - Receive menu request.")
        }
mEuPIRxManagerOrder = EuRxManager(EuOption.ModeType.EUPI)
mEuPIRxManagerOrder.setOnWaveKeyDown(RequestCodeEnum.ORDER_REQUEST.code.toInt()) {
            Log.d(TAG, "mEuPIRxManagerOrder - Receive order request.")
        }

  if (!allMenu.isNullOrEmpty()) {
            if (mEuPIRxManagerOrder.listen()) {
                Log.d(TAG, "mEuPIRxManagerOrder - listen success")
            } else if (mEuPIRxManagerMenu.listen()) {
                Log.d(TAG, "mEuPIRxManagerMenu - listen success")
            } else {
                Log.d(TAG, "Both listen fail")
            }
        }
 

만약 그렇게 한다면 이런식으로 마무리될 것 같습니다. setCode() 로 전송한 데이터 전송 시 주파수로 인식하고 전달한 데이터에도 접근할 수 있다면 주문 시 EuPI로 주파수 인식 ->setCode() 로 테이블 번호를 띄우는 것도 좋을 것 같은데... tx 부분은 사용해보지 않아 가능한 방법인지 모르겠네요ㅠㅠ 또다른 아이디어가 있다면 알려주세요!

@SeonJK
Copy link
Member

SeonJK commented Sep 1, 2022

저희가 기획할 때 하나의 listener를 always listen하면서 다른 listener를 사용하려는 부분이 구현의 어려운 부분인 것 같습니다ㅜㅜ 현재로서는 혜진님이 제안해주신대로 변경하는게 좋다고 생각합니다!

혜진님 제안에 대해 질문이 있는데요!
제안하신 대로 변경하게 되면 두개의 rxManager는 계속 listen하고있는 상태인가요?

이건 글자수제한에 대한 질문인데요! Euphony가 10글자만 전송이 되는 부분에 대해 더 자세히 알 수 있을까요? listen-my-order를 통해서는 사진과 같이 많은 텍스트를 얻을 수 있는데 아직 소스코드를 확인해보지 않아서 다르게 동작하고 있는지는 모르겠어서요!
Screenshot_20220901-120502_listen-my-order.jpg

@phj0407
Copy link
Collaborator Author

phj0407 commented Sep 1, 2022

네네 rxManager 둘 다 계속 listen하는 상태로 둘 생각입니다! 구분이 필요하면 count 변수 만들어서 인식 될 때마다 하나씩 증가시켜도 될 것 같구요~

전송 길이는 다른 팀원 분들이 말씀해주신 거였는데 실제로 작동 시에는 10글자 내외까지만 정상적으로 전달되고 그 이상은 시간이 너무 오래 걸리거나 노이즈가 심하게 섞인다고 하시더라구요ㅠㅠ 사진같은 경우는 운이 좋을 경우 성공한 케이스가 아닐지 조심스럽게 예측해봅니다....!

@SeonJK
Copy link
Member

SeonJK commented Sep 1, 2022

아 그렇군요!! 저는 일단 eupi로 바꾸는거 좋다고 생각합니다!!

지금 생각났는데 eupi를 통해 해당 주파수를 listen하면 메뉴요청에 대한 rxManager를 stop하고 스트링값을 listen하는 식으로 추후 디벨롭해도 될 것 같네요 :)

@phj0407
Copy link
Collaborator Author

phj0407 commented Sep 2, 2022

앗 좋은 아이디어네요!!! 예전 방식보다 더 잘 작동할 것 같아요ㅎㅎ 그럼 위에서 말한대로 코드 수정해보겠습니다~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants